(PHP 4, PHP 5)
explode — Suddivide una stringa
$separator
, string $string
[, int $limit
] )
Questa funzione restituisce una matrice di stringhe, ciascuna delle quali è una parte
di string
ottenuta dividendo la stringa originale
utilizzando separator
come separatore di stringa.
Se si imposta limit
la matrice restituita conterrà
al massimo limit
elementi di cui l'ultimo
conterrà la parte restante di
string
.
Se il parametro separator
è impostato ad una stringa vuota (""),
la funzione explode() restituirà FALSE
. Se
separator
contiene caratteri non presenti
in string
, allora explode() restituirà
una matrice contenente string
.
Se il parametro limit
è negativo, sono restituiti tutti i componenti
tranne gli ultimi limit
elementi. Questa caratteristica è stata
inserita in PHP 5.1.0.
Sebbene implode() può, per ragioni storiche,
accettare i parametri in entrambi gli ordini,
explode() non può. Occorre accertarsi che il parametro
separator
sia antecedente al parametro
string
.
Nota:
Il parametro
limit
è stato aggiunto dalla versione 4.0.1
Example #1 Esempi di uso di explode()
<?php
// Esempio 1
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
// Esempio 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *
?>
Example #2 Esempi del parametro limit
<?php
$str = 'one|two|three|four';
// limite positivo
print_r(explode('|', $str, 2));
// negativo (dal PHP 5.1)
print_r(explode('|', $str, -1));
?>
Il precedente esempio visualizzerà:
Array ( [0] => one [1] => two|three|four ) Array ( [0] => one [1] => two [2] => three )
Nota: Questa funzione è binary-safe (gestisce correttamente i file binari)
Vedere anche preg_split(), spliti(), split(), strtok() e implode().