trim
(PHP 4, PHP 5, PHP 7, PHP 8)
trim — Удаляет пробельные или другие символы в начале и конце строки
Описание
Функция возвращает строку string,
в начале и конце которой удалила пробельные символы, или символы,
которые передали во втором аргументе.
Без второго параметра функция trim() удалит следующие символы:
-
" ": ASCII-символ SP
с кодом 0x20 — стандартный пробел.
-
"\t": ASCII-символ HT
с кодом 0x09 — символ табуляции.
-
"\n": ASCII-символ LF
с кодом 0x0A — символ перевода строки.
-
"\r": ASCII-символ CR
с кодом 0x0D — символ возврата каретки.
-
"\0": ASCII-символ NUL
с кодом 0x00 — NUL-байт.
-
"\v": ASCII-символ VT
с кодом 0x0B — символ вертикальной табуляции.
Список параметров
string
-
Строка (string), которую обрежет функция.
characters
-
Параметр
characters принимает символы, которые удалит функция.
В аргументе перечисляют символы, которые требуется удалить.
Возрастающий диапазон символов указывают конструкцией .. — две точки.
Возвращаемые значения
Функция возвращает обрезанную строку.
Примеры
Пример #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') нет.
Смотрите также
- ltrim() - Удаляет пробельные или другие символы в начале строки
- rtrim() - Удаляет пробельные или другие символы в конце строки
- str_replace() - Заменяет вхождения строки поиска строкой замены