Een van de datatypen die ik eerder benoemde was een array. Dit datatype is een verzameling verschillende waardes. Dit kan dus ook een verzameling van meerdere arrays zijn (om het makkelijker te maken).

<?php
$array = array( 'waarde1', 'waarde2', 'waarde3' );
?>

In het bovenstaande voorbeeld bestaat de array uit drie waarden. Onder water heeft PHP aan elke array een identifier toegekend. Deze identifier staat ook bekend als de key (sleutel). Als je een array op deze manier schrijft dan zullen de sleutels numeriek zijn. 

Je zou verwachten dat ‘waarde1’ de key 1 toegekend krijgt. Helaas, in arrays begint het altijd met 0. Dus key 0 is waarde1, key 1 is waarde2 en key 2 is waarde3.

Als we nu een waarde4 willen toevoegen dan kunnen we het volgende doen:

<?php
$array[] = "waarde4";
?>

PHP zelf weet dat de key 3 nog vrij is en zal deze automatisch toekennen aan waarde4.

Associatieve arrays

In het voorbeeld hierboven ga ik al aan dat een array altijd per waarde een identifier (ofwel sleutel ofwel key) genoemd heeft. Als we deze niet zelf toekennen, dan wordt er dus een numerieke key toegekend.

We kunnen het dus ook zelf toekennen:

<?php
$persoon = array(
    'naam' => 'Andy',
    'geslacht' => 'man',
);
?>

In het voorbeeld hierboven heb ik een variabele gemaakt met daarin een waarde van het datatype array. Deze heeft een key naam en geslacht. Als ik een bepaalde key wil benaderen dan kan ik het volgende doen:

<?php
echo $persoon['naam'];
?>

Geneste (multi-dimensionele) arrays

Het is ook mogelijk om een array in een array te gebruiken. Op deze manier is het mogelijk om een diepgaande datastructuur op te zetten.