Як з рядків прибрати пробіли на PHP?
Trim()
Функція Trim шукає зайві символи до початку рядка наприкінці. Це: звичайний пробіл; табуляція; символ переносу рядка. Записується в такому вигляді: string trim ( string $str[, string $character_mask = " tnrx0B" ])
$str – це оброблювана рядок, а $character_mask – зайві символи. $character_mask є обов'язковим атрибутом.
Preg_replace
Функція для пошуку і заміни символів по регулярному виразу.
mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject[, int $limit = -1[, int &$count ]])
- $pattern – потрібний шаблон.
- $replacement – символи для заміни.
- $subject – оброблюваний об'єкт.
- $limit – кількість вироблених замін.
$pattern і $replacement можуть бути масивами. У такому випадку заміна проводиться у відповідності з індексами.
<!-- 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().
- $search – значення, яке потрібно знайти.
- $replace – замінна рядок.
- $subject – об'єкт, в якому проводиться пошук і заміна.
- $count встановлює кількість замін.
Приклад пошуку і заміни пробілів
Ці функції застосовуються в більшості ситуацій, навіть у більш складних.
<!-- fb_336x280_2 -->
<script> (adsbygoogle = window.adsbygoogle ||[]).push({});
Наприклад, користувач ввів деякі дані, які пізніше будуть надруковані на екрані. Для поліпшення читабельності і сприйняття тексту в цілому цю інформацію потрібно обробити – прибрати повторювані прогалини, замінити їх на одинарні.
$text1 = "Довгий об'ємний текст з зайві пробіли";
У даному випадку видно, що між словами знаходиться по два і три пробіли. Порядок дій, як прибрати пробіли в PHP, наступний.
1. Для початку потрібно перетворити рядок в масив рядків за допомогою функції.
explode(" ", $text1)
Як роздільник використовується один пробіл. Таким чином, частини тіла, які не є окремими елементами масиву, будуть утримувати на один пробіл менше.
2. В результаті виходить такий масив рядків:
$array =["Длинный “, “объемный”, “текст”, “с “, “лишние пробелами"]
3. Кожен елемент обробляється функцією:
preg_replace('/s+/', ' ', $text1)
Для пошуку одного та більшої кількості прогалин використовується регулярний вираз /s+/. Всі знайдені збіги замінюються рядком ' '. Пошук здійснюється у змінній $text1. 4. В результаті отримуємо рядок з правильним кількістю прогалин, яка легко сприймається користувачем.