(PHP 4, PHP 5, PHP 7)
trim — Entfernt Whitespaces (oder andere Zeichen) am Anfang und Ende eines Strings
$str
[, string $character_mask
= " \t\n\r\0\x0B"
] )
Die Funktion entfernt Whitespaces am Anfang und Ende von
str
und gibt den String dann zurück.
Ohne Verwendung des zweiten Parameters entfernt trim()
folgende Zeichen:
str
string erwartet die zu trimmende Zeichenkette.
character_mask
Optional kann die Liste der Zeichen angegeben werden, die an
Anfang und Ende der Zeichenkette entfernt werden sollen. Um diese Zeichen
anzugeben, wird der character_mask
Parameter verwendet.
Er enthält eine Liste aller zu entfernenden Zeichen. Mit
.. können darüber hinaus auch ganze Bereiche von
Zeichen angegeben werden.
Der gekürzte String.
Beispiel #1 Beispiel zur Verwendung von trim()
<?php
$text = "\t\tDieser Text besteht aus mehreren Wörtern :) ... ";
$binary = "\x09Beispeilhafter String\x0A";
$hello = "Hallo Welt";
var_dump($text, $binary, $hello);
print "\n";
$trimmed = trim($text);
var_dump($trimmed);
$trimmed = trim($text, " \t.");
var_dump($trimmed);
$trimmed = trim($hello, "Htla");
var_dump($trimmed);
$trimmed = trim($hello, 'HtWr');
var_dump($trimmed);
// Trimmen der ASCII Steuerzeichen an Anfang und Ende von $binary
// (inklusive der Zeichen von ASCII 0 bis 31)
$clean = trim($binary, "\x00..\x1F");
var_dump($clean);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
string(51) " Dieser Text besteht aus mehreren Wörtern :) ... " string(23) " Beispeilhafter String " string(10) "Hallo Welt" string(47) "Dieser Text besteht aus mehreren Wörtern :) ..." string(43) "Dieser Text besteht aus mehreren Wörtern :)" string(4) "o We" string(8) "allo Wel" string(21) "Beispeilhafter String"
Beispiel #2 Trimmen von Array-Werten mittels trim()
<?php
function trim_value(&$value)
{
$value = trim($value);
}
$fruechte = array('Apfel','Banane ', ' Preiselbeere ');
var_dump($fruechte);
array_walk($fruechte, 'trim_value');
var_dump($fruechte);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
array(3) { [0]=> string(5) "Apfel" [1]=> string(7) "Banane " [2]=> string(11) " Preiselbeere " } array(3) { [0]=> string(5) "Apfel" [1]=> string(6) "Banane" [2]=> string(9) "Preiselbeere" }
Hinweis: Mögliche Überraschungen: Entfernung mittlerer Zeichen
Weil trim() Zeichen vom Anfang und Ende einer Zeichenkette (string) entfernt, kann es verwirrend sein, wenn Zeichen aus der Mitte gelöscht (oder nicht) werden. trim('abc', 'bad') entfernt 'a' und 'b', weil es 'a' entfernt, verschiebt daher 'b' an den Anfang um ebenfalls entfernt zu werden. Daher "funktioniert" es, trim('abc', 'b') dagegen scheinbar nicht.