PHP Handbuch
Zurück |  | Nach vorne

# split

(PHP 3, PHP 4 )

split -- Zerlegt eine Zeichenkette anhand eines regulären Ausdrucks in ein Array

## Beschreibung

array split ( string Suchmuster, string Zeichenkette [, int Beschränkung])

> Anmerkung: Die Funktion preg_split(), die eine zu Perl kompatible Syntax regulärer Ausdrücke verwendet, ist häufig die schnellere Alternative zu split().

Gibt ein Array mit Zeichenketten zurück, die jeweils eine Teilzeichenkette von `Zeichenkette` sind und durch deren Zerlegung an den durch `Suchmuster` des regulären Ausdrucks bestimmten Stellen entstehen. Wenn `Beschränkung` gesetzt wurde, enthält das zurückgegebene Array höchstens `Beschränkung` Elemente, von denen das letzte den ganzen Rest von `Zeichenkette` enthält. Bei Auftreten eines Fehlers gibt split() `FALSE` zurück.

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

Beispiel 1. split() Beispiel
    list($user,$pass,$uid,$gid,$extra)= split (":", $passwd_line, 5);

> Anmerkung: Wenn `Suchmuster` `n` mal vorkommt, enhält das zurückgegebene Array ``n`+1` Elemente. Kommt `Suchmuster` zum Beispiel überhaupt nicht vor, wird ein Array mit nur einem Element zurückgegeben. Das gilt natürlich auch, wenn `Zeichenkette` leer ist.

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

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

Beachten Sie, dass `Suchmuster` Groß- und Kleinschreibung berücksichtigt.

Beachten Sie: wenn Sie die Fähigkeiten regulärer Ausdrücke nicht benötigen, ist die Verwendung von explode() schneller, weil diese Funktion nicht unter der Last der Engine für reguläre Ausdrücke steht.

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() an.

Bitte beachten Sie, dass `Suchmuster` ein regulärer Ausdruck ist. 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.

Siehe auch: preg_split(), spliti(), explode(), implode(), chunk_split() und wordwrap().

Zurück | Zum Anfang | Nach vorne
eregi | Nach oben | spliti