Як з рядків прибрати пробіли на PHP?

17 0 Новини високих технологій

Працюючи з текстом, часто доводиться його форматувати. Це необхідно для коректного висновку на екран і легкої доступності. Це потрібно, якщо користувач вписує деяку інформацію і допускає помилки: замість одного пробілу вказує два, на початку ставить табуляцію. Є кілька способів прибрати пробіли в PHP.

Trim()

Функція Trim шукає зайві символи до початку рядка наприкінці. Це:
  • звичайний пробіл;
  • табуляція;
  • символ переносу рядка.
  • Записується в такому вигляді:

    string trim ( string $str[, string $character_mask = " tnrx0B" ])

    $str – це оброблювана рядок, а $character_mask – зайві символи. $character_mask є обов'язковим атрибутом.

    Preg_replace

    Функція для пошуку і заміни символів по регулярному виразу.

    Як з рядків прибрати пробіли на PHP?
      mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject[, int $limit = -1[, int &$count ]])  
    1. $pattern – потрібний шаблон.
    2. $replacement – символи для заміни.
    3. $subject – оброблюваний об'єкт.
    4. $limit – кількість вироблених замін.

    $pattern і $replacement можуть бути масивами. У такому випадку заміна проводиться у відповідності з індексами.

    <script async="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js">
    <!-- fb_336x280_1 -->

    <script> (adsbygoogle = window.adsbygoogle ||[]).push({});

    Str_replace()

    Прибрати пробіли з рядка в PHP можна методом str_replace(). Він замінює усі рядки пошуку на рядок заміни.

      mixed str_replace ( mixed $search , mixed $replace , mixed $subject[, int &$count ])  

    Використовується в якості спрощеного методу preg_replace().

    1. $search – значення, яке потрібно знайти.
    2. $replace – замінна рядок.
    3. $subject – об'єкт, в якому проводиться пошук і заміна.
    4. $count встановлює кількість замін.
        

    Приклад пошуку і заміни пробілів

    Ці функції застосовуються в більшості ситуацій, навіть у більш складних.

    <script async="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js">
    <!-- fb_336x280_2 -->

    <script> (adsbygoogle = window.adsbygoogle ||[]).push({});
    Як з рядків прибрати пробіли на PHP?

    Наприклад, користувач ввів деякі дані, які пізніше будуть надруковані на екрані. Для поліпшення читабельності і сприйняття тексту в цілому цю інформацію потрібно обробити – прибрати повторювані прогалини, замінити їх на одинарні.

      $text1 = "Довгий об'ємний текст з зайві пробіли";  

    У даному випадку видно, що між словами знаходиться по два і три пробіли. Порядок дій, як прибрати пробіли в PHP, наступний.

    1. Для початку потрібно перетворити рядок в масив рядків за допомогою функції.

      explode(" ", $text1)  

    Як роздільник використовується один пробіл. Таким чином, частини тіла, які не є окремими елементами масиву, будуть утримувати на один пробіл менше.

    2. В результаті виходить такий масив рядків:

      $array =["Длинный “, “объемный”, “текст”, “с “, “лишние пробелами"] 

    3. Кожен елемент обробляється функцією:

      preg_replace('/s+/', ' ', $text1)  

    Для пошуку одного та більшої кількості прогалин використовується регулярний вираз /s+/. Всі знайдені збіги замінюються рядком ' '. Пошук здійснюється у змінній $text1. 4. В результаті отримуємо рядок з правильним кількістю прогалин, яка легко сприймається користувачем.