A. Mögliche Dimensionen eines Arrays:
B. Indizierung eines Arrays:
Die PHP-Funktion „array_push“ fügt ein oder mehrere Elemente an das Ende eines Arrays an. Die PHP-Funktion „array_unshift“ fügt ein oder mehr Elemente am Anfang eines Arrays ein.
Mit folgender Funktion können Sie Elemente eines Arrays in gewünschter Position in einem anderen Array einfügen:
function insert_array( $arr1, $pos, $arr2 ) { $totalArr1 = count( $arr1 ); $totalArr2 = count( $arr2 ); $newArr = array(); // neues Array erstellen if( $pos <= $totalArr1 && $totalArr2 > 0 ) { foreach( $arr1 as $key=>$val ) { $newArr[$key] = $val; // Inhalt vom 1. Array hinzufügen if( --$pos == 0 ) // Position erreicht { foreach( $arr2 as $key2=>$val2 ) { $newArr[$key2] = $val2; // Inhalt vom 2. Array hinzufügen } } } } return $newArr; }
Anwendungsbeispiel:
$navi = array( "home" => "Startseite", "about" => "Über uns", "contact" => "Kontakt" ); if( $Migtlied ) { $navi = array_insert($navi, 2, array( "members" => "Mitgliederbereich")); }
Mit der PHP-Funktion range() kann ein Array automatisch mit einer Zahlenreihe befüllt werden. Das folgende Beispiel erstellt ein Array mit jeder zweiten Zahlen zwischen 1 und 16:
$numbers = range( 0, 16, 2 );
Ergebnis:
Array ( [0] => 0 [1] => 2 [2] => 4 [3] => 6 [4] => 8 [5] => 10 [6] => 12 [7] => 14 [8] => 16 )
Beispiel:
$Farben = [ 2 => "blau", 1 => "gelb", 3 => "grün", 0 => "rot", 4 => "schwarz" ]; ksort( $Farben ); print_r( $Farben );
Ergebnis:
Array ( [0] => rot [1] => gelb [2] => blau [3] => grün [4] => schwarz )
Beispiel: Alle Adress-Objekte sollen nach Postleitzahl sortiert werden:
array_multisort( array_column( $adressen, 'plz' ), SORT_NATURAL | SORT_FLAG_CASE, $adressen );
Hinweis: Die Eigenschaft „plz“ des PHP-Objektes $adressen muss hierfür die Sichtbarkeit „public“ besitzen.
Beispiel: Alle Spielscheine aussortieren, die nicht gewonnen haben:
public function SpielscheinFilter( $Spielschein ) { return( $Spielschein['gewonnen'] ); } $Spielscheine = array_filter( $Spielscheine, "SpielscheinFilterFilter" );
Es werden nur Spielscheine berücksichtigt, bei denen die Callback-Funktion „true“ zurück gibt.
Wenn die Funktionen „sortPLZ“ und „SpielscheinFilter“ in als Methoden in Klassen erstellt wurden können sie wie folgt aufgerufen werden:
usort( $adressen, [ $this, "sortPLZ"] ); $Spielscheine = array_filter( $Spielscheine, [ $this, "SpielscheinFilterFilter" ] );
Anstelle von $this könen auch andere, externe Klassen angesprochen werden. Diese sind dann als Zeichenkette in Anführungsstrichen zu setzen.
Seit der PHP-Version 5.3 können für alle oben aufgeführten Beispiele auch mit anonyme Funktionen benutzt werden. Weitere Informationen über anonyme Funktionen
Mit der PHP-Funktion „array_flip()“ können die Schlüssel (keys) und Werte (values) eines Array einfach umgedreht werden. Ein Beispiel hierfür ist unten auf dieser Seite zu finden.
Der Passworggenerator ist ein schönes Beispiel dafür, wie ein Array von einem anderen extrahiert werden kann und wie die dadurch entstehenden Lücken im index eines numerischen Arrays entfernt werden.