Die Funktion explode ermöglicht es dem PHP Programmierer, einzelne Bestandteile einer Zeichenkette in ein Array zu exportieren. Dabei wird ein Trennerzeichen oder ein Trenner-String angegeben, das als Anhaltspunkt für die Aufteilung genutzt wird. An den Stellen, an denen ein Trenner im Quell-String steht wird dieser als Endpunkt eines Array-Elements interpretiert – das Element erstreckt sich vom Beginn des Strings bzw. vom letzten Trenner im String bis zum nächsten vorkommenden Trenner oder aber (falls keine weiteren Trenner folgen) bis zum Ende des Strings.
Explode erwartet zumindest zwei Parameter, von denen der Erste das Trennzeichen oder den Trenn-String angibt. Mit dem zweiten Parameter wird das zugrundeliegende Quell-String angegeben, aus dem die enthaltenen Teilstrings entnommen werden sollen. Der optionale dritte Parameter kann genutzt werden, um eine maximale Obergrenze der zu entnehmenden Elemente festzulegen. Wird hier beispielsweise die Zahl fünf angegeben, so werden maximal fünf Elemente extrahiert.
Als Rückgabewert liefert explode ein eindimensionales Array, welches die durch den Trenner separierten Teilstrings enthält. Kommt der Trenner nicht im Quellstring vor, so wird ein Array geliefert, das lediglich ein Element enthält, in dem das koplette Quellstring steht. Wird als Trenner ein leeres String an die Funktion übergeben, so liefert explode stets den Wert FALSE. Bei Angabe des optionalen Parmeters zur Begrenzung der Trennungen arbeitet explode wie zuvor beschrieben. Allerdings kann hier ein besonderer Fall auftreten: Enthält das Quellstring mehr als die per Begrenzung angegebenen Elemente, so enthält das letzte Element des gelieferten Arrays nicht nur das per Parameter vorgegebene n-te Element, sondern den Rest der Quellzeichenkette beginnend ab dem Startpunkt des entsprechenden Elements. Beachten Sie bitte, dass explode beim Auffinden von Trennern grundsätzlich zwischen Groß- und Kleinschreibung unterscheidet. Mit Hilfe der Funktionen split und spliti können Strings auf Basis von regulären Ausdrücken aufgeteilt werden.
<?php // Initialisieren eines Strings, welches als Quellstring genutzt werden soll $quellstring = 'Dieser Satz soll in seine Bestandteile zerlegt werden.'; // String mit einem Leerzeichen als Trennerzeichen aufteilen $woerter = explode (' ', $quellstring); // Anzahl der Worte im Beispielsatz echo 'Anzahl der Worte im String: ' . sizeof ($woerter) . '<br>'; // Inhalt des Arrays ausgeben print_r ($woerter); // Über den Trenner maximal drei Elemente extrahieren $ersten_drei = explode (' ', $quellstring, 3); // Und wieder das Ergebnis anzeigen print_r ($ersten_drei); ?>
Anzahl der Worte im String: 8
Array
(
[0] => Dieser
[1] => Satz
[2] => soll
[3] => in
[4] => seine
[5] => Bestandteile
[6] => zerlegt
[7] => werden.
)
Array
(
[0] => Dieser
[1] => Satz
[2] => soll in seine Bestandteile zerlegt werden.
)
<?php // Scriptparameter (z.B. nach Entnahme aus _GET) separieren $parameter = 'page=2§ion=1&topic=34'; // Einzelne Parameter eines GET-Request werden durch ein &-Zeichen getrennt $args = explode ('&', $parameter); // Parameter in ein assoziatives Array umwandeln for ($i = 0; $i < sizeof ($args); $i++) { // Schlüssel-Werte-Paare sind durch ein Gleichheitszeichen // voneinander getrennt. Jeder Parameter enthält den Variablennamen, // gefolgt von einem = (Trenner) und dem Wert, welcher bis zum Ende // des Array-Elements geht. Es sollen also maximal zwei Elemente // voneinander getrennt werden. Statt einer Zuweisung an ein Array // werden die Werte hier mit Hilfe von list in den beiden Variablen // key und value zwischengespeichert. list ($key, $value) = explode ('=', $args[$i], 2); // Assoziazives Array mit Key-Value-Paaren aufbauen $assoc_parameter[$key] = $value; // Alternativ geht auch folgendes: // $tmp = explode ('=', $args[$i], 2); // $assoc_parameter[$tmp[0]] = $tmp[1]; } // Resultat der Umwandlung ausgeben print_r ($assoc_parameter); ?>
Array
(
[page] => 2
[section] => 1
[topic] => 34
)
¬ Menu
¬ Gratis Download
¬ Tutorials
¬ Seminare
¬ Yoga
¬ Insolvenzrecht
¬ News
15.08.2008Schleifen in PHP: Die While-Schleife » mehr 13.08.2008Nutzung von Variablen unter PHP: Definition, Sichtbarkeit und vordefinierte Variablen » mehr 11.08.2008Ausgabe von Datum und Zeit mit PHP nach Konvertierung in ein String » mehr Eine vollständige News-Liste ist auf der News-Seite zugänglich.
¬ Foren
¬ Buchtipp
PHP 5.3 & MySQL 5.1, m. DVD-ROM
Weitere PHP Bücher finden Sie unter PHP Literatur