POSIX Regex-Funktionen
PHP Manual

split

(PHP 4, PHP 5)

splitZerlegt eine Zeichenkette anhand eines regulären Ausdrucks in ein Array

Beschreibung

array split ( string $pattern , string $string [, int $limit = -1 ] )

Zerlegt string anhand eines regulären Ausdrucks in ein Array.

Warnung

Diese Funktion ist seit PHP 5.3.0 DEPRECATED (veraltet). Sich auf diese Funktion zu verlassen ist in keiner Weise empfehlenswert.

Parameter-Liste

pattern

Regulärer Ausdruck mit Berücksichtigung der Groß- und Kleinschreibung

Wenn Sie eine Zerlegung an Zeichen vornehmen, die in regulären Ausdrücken als besondere Zeichen betrachtet werden, müssen Sie diese entsprechend kennzeichnen. Wenn Sie der Ansicht sind, split() (oder, bei diesem Thema, eine andere Regex-Funktion) verhalte sich seltsam, lesen Sie bitte die Datei regex.7, die sich im regex/ Unterverzeichnis ihrer PHP-Distribution befindet. Da sie im manpage-Fomat vorliegt, sollten Sie einen Befehl der Art man /usr/local/src/regex/regex.7 verwenden, um sie zu lesen.

string

Die zu durchsuchende Zeichenkette

limit

Wenn limit gesetzt wurde, enthält das zurückgegebene Array höchstens limit Elemente, von denen das letzte den ganzen Rest von string enthält.

Rückgabewerte

Gibt ein Array mit Zeichenketten zurück, die jeweils eine Teilzeichenkette von string sind. Diese Teilzeichenketten entstehen durch Zerlegung von string an den durch den regulären Ausdruck pattern bestimmten Stellen unter Berücksichtigung der Groß- und Kleinschreibung.

Wenn pattern n mal vorkommt, enhält das zurückgegebene Array n+1 Elemente. Kommt pattern zum Beispiel überhaupt nicht vor, wird ein Array mit nur einem Element zurückgegeben. Das gilt natürlich auch, wenn string leer ist. Bei Auftreten eines Fehlers gibt split() FALSE zurück.

Beispiele

Beispiel #1 split()-Beispiel

Um die ersten vier Felder einer Zeile von /etc/passwd abzuspalten:

<?php
list($user$pass$uid$gid$extra) =
    
split(":"$passwd_line5);
?>

Beispiel #2 split()-Beispiel

Um ein Datum zu analysieren, das durch Schrägstriche, Punkte oder Bindestriche getrennt ist:

<?php
// Trennzeichen darf ein Schrägstrich, Punkt oder Bindestrich sein
$datum "04/30/1973";
list (
$monat$tag$jahr) = split('[/.-]'$datum);
echo 
"Monat: $monat; Tag: $tag; Jahr: $jahr<br />\n";
?>

Anmerkungen

Hinweis:

Seit PHP 5.3.0 ist die regex-Erweiterung zugunsten der PCRE-Erweiterung als veraltete markiert. Ein Aufruf dieser Funktion wird eine E_DEPRECATED-Notice ausgeben. Sie können sich die Liste der Unterschiede ansehen, wenn Sie Hilfe beim Umstieg auf PCRE benötigen.

Tipp

split() ist ab PHP 5.3.0 veraltet. Verwenden Sie stattdessen preg_split(). Wenn Sie die Fähigkeiten regulärer Ausdrücke nicht benötigen, ist die Verwendung von explode() schneller, weil diese Funktion ohne die Engine für reguläre Ausdrücke auskommt.

Tipp

Wenn Sie nach einer Möglichkeit suchen, das Verhalten von Perls @chars = split('', $str) nachzuahmen, schauen Sie sich bitte die Beispiele für preg_split() oder str_split() an.

Siehe auch


POSIX Regex-Funktionen
PHP Manual