Маніпуляція рядками за допомогою методу remove в Laravel

0
Перекладено ШІ
Оригінал: Laravel News
Оновлено: 22 березня, 2025
Laravel пропонує потужний метод Str::remove, який суттєво спрощує маніпуляції з рядками, дозволяючи легко видаляти небажані символи. Чи хотіли б ви дізнатися, як цей метод може вдосконалити ваші проекти? Читайте далі, щоб виявити інструменти оптимізації, які допоможуть вам в обробці контенту
```html

Laravel вдосконалює управління рядками завдяки потужному методу Str::remove. Ця утиліта спрощує процес видалення небажаних символів з рядків.

Метод пропонує як чутливі, так і нечутливі до регістру опції:

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 ContentFormatter
{
    /**
     * Очищає непотрібні пробіли та форматування
     */
    public function normalizeWhitespace(string $content): string
    {
        // Видалити зайві пробільні символи
        return Str::remove(["\r", "\t", "\x0B"], $content);
    }

    /**
     * Форматує телефонні номери у єдиному стилі
     */
    public function formatTelephone(string $number): string
    {
        // Вилучити всі нечислові символи
        $digits = Str::remove([' ', '-', '(', ')', '.', '+'], $number);

        // Форматувати відповідно до довжини
        return match(strlen($digits)) {
            10 => substr($digits, 0, 3) . '-' . substr($digits, 3, 3) . '-' . substr($digits, 6),
            11 => '+' . substr($digits, 0, 1) . ' ' . substr($digits, 1, 3) . '-' . substr($digits, 4, 3) . '-' . substr($digits, 7),
            default => $digits
        };
    }

    /**
     * Очищає вхідні дані для слугів у базі даних
     */
    public function slugify(string $text): string
    {
        // Видалити спеціальні символи та замінити пробіли на дефіси
        $text = Str::remove(['!', '?', ',', '.', '&', '%', '$', '#', '@'], $text);
        return Str::slug($text);
    }
}

Метод remove в Laravel надає чистий і зрозумілий спосіб виконання звичайних операцій очищення рядків без використання складних регулярних виразів

```

Популярні

Logomark Logotype

Laravel Boost — ваш стартовий набір для програмування з використанням штучного інтелекту

Вперше у світі Laravel з'являється можливість, яка значно спростить ваше повсякденне програмування завдяки новому пакету Laravel Boost. Читайте статтю, щоб дізнатися, як посилена інтеграція штучного інтелекту може підвищити ефективність вашої роботи та оптимізувати створення проектів у Laravel

Logomark Logotype

Nuxt 3 + Laravel Sanctum: Просте та надійне рішення для автентифікації вашого SPA та API

У сучасній веб-розробці аутентифікація є ключовою для захисту додатків і даних користувачів. Дізнайтеся, як модуль nuxt-sanctum-authentication спростить інтеграцію між Nuxt 3 та Laravel Sanctum, забезпечуючи надійний і зручний спосіб реалізації аутентифікації для вашого проєкту

Logomark Logotype

Перетворення даних у типобезпечні DTO за допомогою пакету Data Model

Досліджуйте новий пакет Data Model для PHP, який спрощує процес гідратації об'єктів без зайвих складнощів! Дізнайтеся, як впровадження типобезпечних об'єктів може революціонізувати ваш підхід до розробки, читаючи нашу статтю