(PHP 4, PHP 5, PHP 7, PHP 8)
trim — Elimina los espacios (u otros caracteres) al inicio y al final de un string
trim() retorna el string string
, después
de haber eliminado los caracteres invisibles al inicio y al final del string.
Si el segundo parámetro characters
es omitido,
trim() eliminará los siguientes caracteres:
" "
: ASCII SP caracter
0x20
, un espacio ordinario.
"\t"
: ASCII HT caracter
0x09
, un tabulador.
"\n"
: ASCII LF caracter
0x0A
, una nueva línea (line feed).
"\r"
: ASCII CR caracter
0x0D
, un retorno de carro.
"\0"
: ASCII NUL caracter
0x00
, el byte NULL
.
"\v"
: ASCII VT
caracter 0x0B
, un tabulador vertical.
string
El string que será recortado.
characters
characters
.
Simplemente enumere todos los caracteres que necesitan ser eliminados.
Con ..
es posible especificar un rango creciente de caracteres.
El string recortado.
Ejemplo #1 Ejemplo con 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);
// Elimina los caracteres de control ASCII al inicio y al final de $binary
// (de 0 a 31 inclusive)
$clean = trim($binary, "\x00..\x1F");
var_dump($clean);
?>
El resultado del ejemplo sería:
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"
Ejemplo #2 Eliminación de caracteres en un array con 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);
?>
El resultado del ejemplo sería:
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" }
Nota: Posible uso: eliminación de caracteres en medio del string
Debido a que la función trim() elimina caracteres al inicio y al final del string, puede resultar confuso cuando los caracteres son (o no) eliminados desde el medio.
trim('abc', 'bad')
elimina tanto 'a' como 'b' porque la función elimina 'a', luego, mueve 'b' al inicio del string, que también será eliminado. Asimismo, es la razón por la cual la función "funciona" mientras quetrim('abc', 'b')
no funciona.