array_pad
array_pad($array, $length, $value)
Gibt das Array zurück, mit dem angegebenen Wert auf die gewünschte Länge aufgefüllt. Eine positive Länge füllt am Ende auf, eine negative am Anfang. Ein ausreichend langes Array wird unverändert zurückgegeben.
Parameter
- $array – das Eingabe-Array.
- $length – die gewünschte Anzahl der Elemente. Eine negative Zahl füllt von links auf.
- $value – der Wert der hinzugefügten Elemente.
Beispiele
print_r(array_pad(array(1, 2), 4, 0)); // Array ( [0] => 1 [1] => 2 [2] => 0 [3] => 0 )
// eine negative Länge füllt am Anfang auf
print_r(array_pad(array(1, 2), -4, 0)); // Array ( [0] => 0 [1] => 0 [2] => 1 [3] => 2 )
// ein längeres Array kürzt sie nicht
echo count(array_pad(array(1, 2, 3), 2, 0)); // 3
// Text in Variablen aufteilen, auch wenn ein Teil fehlt
list($first, $last) = array_pad(explode(" ", "Max"), 2, "");
var_dump($last); // string(0) ""
// die letzte Tabellenzeile auf drei Zellen auffüllen
echo implode("|", array_pad(array("a", "b"), 3, "-")); // a|b|-
// numerische Schlüssel werden neu nummeriert
print_r(array_pad(array(5 => "a"), 2, "x")); // Array ( [0] => a [1] => x )
Worauf Sie achten sollten
- Sie macht ein Array nur länger, nie kürzer. Kürzen kann array_slice().
- Sie gibt ein neues Array zurück, das ursprüngliche wird nicht geändert.
- Beim Auffüllen werden numerische Schlüssel ab null neu nummeriert, Zeichenketten-Schlüssel bleiben.
- list() mit einem Array, dem ein Element fehlt, gibt einen Hinweis auf einen undefinierten Index aus. array_pad verhindert das.
Verwandte Funktionen:
array_fill()
array_slice()
str_pad()