Um verschachtelte Arrays zu Imploden (Multi Implode) oder einen String zu einem verschachtelten Array zu Exploden (Multi Explode) können diese Funktionen verwendet werden.
$array = array( array(1, 2, array(22,55,66)), array(2, 4, 5), array(7, 8, 9)); function multi_implode(array $glues, array $array) { $out = ""; $g = array_shift($glues); $c = count($array); $i = 0; foreach ($array as $val) { if (is_array($val)) { $out .= multi_implode($glues, $val); } else { $out .= (string)$val; } $i++; if ($i < $c) { $out .= $g; } } return $out; } function multi_explode(array $delimiter, $string) { $d = array_shift($delimiter); if ($d != NULL) { $tmp = explode($d, $string); foreach ($tmp as $key => $o) { $out[$key] = multi_explode($delimiter, $o); } } else { return $string; } return $out; } $string = multi_implode(array('<br />', ', ', '- '), $array); echo $string;
Ausgabe:
1, 2, 11- 55- 66
2, 4, 6
5, 10, 15