(PHP 4, PHP 5, PHP 7)
trim — Удаляет пробелы (или другие символы) из начала и конца строки
Описание
$str
[, string $character_mask
= » \t\n\r\0\x0B» ] )Эта функция возвращает строку str
с удаленными из начала и конца строки пробелами. Если второй параметр не передан, trim()удаляет следующие символы:
- » » (ASCII 32 (0x20)), обычный пробел.
- «\t» (ASCII 9 (0x09)), символ табуляции.
- «\n» (ASCII 10 (0x0A)), символ перевода строки.
- «\r» (ASCII 13 (0x0D)), символ возврата каретки.
- «\0» (ASCII 0 (0x00)), NUL-байт.
- «\x0B» (ASCII 11 (0x0B)), вертикальная табуляция.
Список параметров
str
-
Обрезаемая строка (string).
character_mask
-
Можно также задать список символов для удаления с помощью необязательного аргумента
character_mask
. Просто перечислите все символы, которые вы хотите удалить. Можно указать конструкцию .. для обозначения диапазона символов.
Возвращаемые значения
Обрезаемая строка.
Примеры
Пример #1 Пример использования trim()
<?php $text = "\t\tThese are a few words :) ... "; $binary = "\x09Example string\x0A"; $hello = "Hello World"; var_dump($text, $binary, $hello); print "\n"; $trimmed = trim($text); var_dump($trimmed); $trimmed = trim($text, " \t."); var_dump($trimmed); $trimmed = trim($hello, "Hdle"); var_dump($trimmed); $trimmed = trim($hello, 'HdWr'); var_dump($trimmed); // удаляем управляющие ASCII-символы с начала и конца $binary // (от 0 до 31 включительно) $clean = trim($binary, "\x00..\x1F"); var_dump($clean); ?>
Результат выполнения данного примера:
string(32) " These are a few words :) ... " string(16) " Example string " string(11) "Hello World" string(28) "These are a few words :) ..." string(24) "These are a few words :)" string(5) "o Wor" string(9) "ello Worl" string(14) "Example string"
Пример #2 Обрезание значений массива с помощью trim()
<?php function trim_value(&$value) { $value = trim($value); } $fruit = array('apple','banana ', ' cranberry '); var_dump($fruit); array_walk($fruit, 'trim_value'); var_dump($fruit); ?>
Результат выполнения данного примера:
array(3) { [0]=> string(5) "apple" [1]=> string(7) "banana " [2]=> string(11) " cranberry " } array(3) { [0]=> string(5) "apple" [1]=> string(6) "banana" [2]=> string(9) "cranberry" }
Примечания
Замечание: Возможные трюки: удаление символов из середины строки
Так как trim() удаляет символы с начала и конца строки string, то удаление (или неудаление) символов из середины строки может ввести в недоумение. trim(‘abc’, ‘bad’) удалит как ‘a’, так и ‘b’, потому что удаление ‘a’ сдвинет ‘b’ к началу строки, что также позволит ее удалить. Вот почему это «работает», тогда как trim(‘abc’, ‘b’) очевидно нет.