Il ragionamento da fare con gli array è molto semplice.

Con una var io posso memorizzare un unico valore
$var=val ;

Con un array, invece, posso memorizzare più valori, è una sorta di contenitore per variabili:

$var[1] = val1
$var[2] = val2
$var[3] = val3
ecc

Ora, ogni valore può essere a sua volta un array

$var[1] = val1
$var[2] = val2
$var[3][1] = var3_1
$var[3][2] = val3_2

Per definire un array, inoltre non c'è bisogno di definirlo a priori come tale.

Per intenderci, una cosa del genere

$var[1] = 'val1' ;

funziona anch senza scrivere prima

$var = array() ;

Ciao!