Laravel
February 13

Очистка строк с помощью метода remove в Laravel

Необходимо удалить определенные символы из строк? Метод Str::remove в Laravel предоставляет простой способ очистки текстового контента.

Базовое использование

Удаление определенных символов из строки:

use Illuminate\Support\Str;
$string = 'Peter Piper picked a peck of pickled peppers.';
$removed = Str::remove('e', $string);
// Результат: "Ptr Pipr pickd a pck of pickld ppprs."

// Удаление без учета регистра
$removed = Str::remove('P', $string, false);
// Результат: "eter ier icked a eck of ickled eers."

Реальный пример

Вот как его можно использовать в сервисе обработки текста:

class TextCleaner
{
    public function cleanupPhoneNumber(string $phone)
    {
        return Str::remove(['-', ' ', '(', ')'], $phone);
    }
    
    public function removeSpecialCharacters(string $text)
    {
        $characters = ['@', '#', '#39;, '%', '^', '&', '*'];
        return Str::remove($characters, $text);
    }
    
    public function sanitizeUsername(string $username)
    {
        // Удаление стандартных специальных символов и пробелов
        $cleaned = Str::remove([
            ' ', '.', '-', '_', '@', 
        ], $username);
        
        return strtolower($cleaned);
    }
    
    public function cleanupCSVContent(string $content)
    {
        // Удаление невидимых символов
        return Str::remove([
            "\r", "\n", "\t", "\0", "\x0B"
        ], $content);
    }
}

// Использование
class UserController extends Controller
{
    public function store(Request $request, TextCleaner $cleaner)
    {
        $phone = $cleaner->cleanupPhoneNumber($request->phone);
        $username = $cleaner->sanitizeUsername($request->username);
            User::create([
            'phone' => $phone,
            'username' => $username
        ]);
    }
}

Метод remove упрощает операции очистки строк, делая код обработки текста более читабельным и удобным в сопровождении.

Осваиваем Laravel