explode
(PHP 4, PHP 5, PHP 7, PHP 8)
explode — Teilt eine Zeichenkette anhand einer Zeichenkette
Beschreibung
$separator, string $string, int $limit = PHP_INT_MAX): array
   Gibt ein Array aus Zeichenketten zurück, die jeweils Teil von
   string sind. Die Abtrennung erfolgt dabei an der mit
   separator angegebenen Zeichenkette.
  
Parameter-Liste
- 
separator
- 
      Die Begrenzungszeichenkette. 
- 
string
- 
      Die Eingabezeichenkette. 
- 
limit
- 
      Ist der Parameter limitangegeben und positiv, enthält das zurückgegebene Array maximallimitElemente, wobei das letzte Element den Rest vonstringbeinhaltet.Ist der Parameter limitnegativ, werden alle Teilzeichenketten bis auf die letzten -limit-Teile zurückgegeben.Wenn der Parameter limitgleich 0 ist, wird er wie 1 behandelt.
Hinweis:
Vor PHP 8.0 akzeptierte implode() die Parameter in beliebiger Reihenfolge. explode() hat dies nie unterstützt. Stellen Sie daher sicher, dass Sie den Parameter
separatorvor dem Parameterstringnotieren.
Rückgabewerte
   Gibt ein Array von Strings zurück, die
   durch Aufsplitten des Parameters string an
   Begrenzungen durch separator erzeugt werden.
  
   Ist separator eine leere Zeichenkette (""), so löst
   explode() einen ValueError aus. Enthält
   separator einen Wert, der nicht in
   string vorkommt und wird ein negativer Wert für
   limit verwendet, wird ein leeres
   Array zurückgegeben. Für alle anderen Werte von
   limit wird ein Array zurückgegeben,
   das string als einziges Element enthält. Wenn
   separator am Anfang oder am Ende von
   string steht, wird ein leeres Array
   an den Anfang bzw. das Ende des zurückgegebenen Arrays
   angehängt.
  
Changelog
| Version | Beschreibung | 
|---|---|
| 8.0.0 | explode() löst nun einen
       ValueError aus, wenn an den Parameter separatoreine leere Zeichenkette
       ("") übergeben wird.
       Bisher gab explode() stattdessenfalsezurück. | 
Beispiele
Beispiel #1 explode()-Beispiele
<?php
// Beispiel 1
$pizza  = "Teil1 Teil2 Teil3 Teil4 Teil5 Teil6";
$teile = explode(" ", $pizza);
echo $teile[0]; // Teil1
echo $teile[1]; // Teil2
// Beispiel 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *
?>
Beispiel #2 explode()-Rückgabebeispiele
<?php
/*
   Eine Zeichenkette, die nicht das Trennzeichen enthält, wird einfach
   ein ein-elementiges Array mit der ursprünglichen Zeichenkette liefern.
*/
$input1 = "hallo";
$input2 = "hallo,da";
$input3 = ',';
var_dump( explode( ',', $input1 ) );
var_dump( explode( ',', $input2 ) );
var_dump( explode( ',', $input3 ) );
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
array(1)
(
    [0] => string(5) "hallo"
)
array(2)
(
    [0] => string(5) "hallo"
    [1] => string(5) "da"
)
array(2)
(
    [0] => string(0) ""
    [1] => string(0) ""
)
Beispiel #3 limit-Parameterbeispiele
<?php
$str = 'eins|zwei|drei|vier';
// positiver Wert in "limit"
print_r(explode('|', $str, 2));
// negative Wert in "limit"
print_r(explode('|', $str, -1));
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Array
(
    [0] => eins
    [1] => zwei|drei|vier
)
Array
(
    [0] => eins
    [1] => zwei
    [2] => drei
)
Anmerkungen
Hinweis: Diese Funktion ist binärsicher.
Siehe auch
- preg_split() - Zerlegt eine Zeichenkette anhand eines regulären Ausdrucks
- str_split() - Konvertiert einen String in ein Array
- mb_split() - Split multibyte string using regular expression
- str_word_count() - Liefert Informationen über in einem String verwendete Worte
- strtok() - Zerlegt einen String
- implode() - Verbindet Array-Elemente zu einem String
 
                     
                     
                     
                     
                    
 
          