PHP ne supporte pas directement les tableaux multi-dimensions ou les matrices.

Pour réaliser un tableau à plusieurs dimensions, il suffit que les valeurs des éléments du tableau soient eux-même des tableaux. Si on veut vraiment réaliser une matrice, c'est à nous de veiller à ce que ces tableaux "internes" aient le même nombre d'éléments.

Exemple : tableau à plusieurs dimensions
<?php require('bib_fonctions.php'); htmlDebut('Tableau à plusieurs dimensions'); $t['B41d'] = array('Pierre','03 81 60 20 66','Professeur'); $t['C24a'] = array('Paul','03 80 60 20 19','Maitre de conf'); $t['D12z'] = array('Jacques','03 80 60 20 36','Doctorant'); foreach ($t as $cle => $tableau) { htmlInfo("Bureau $cle"); echo 'occupé par ', $tableau[0], '<br>téléphone : ', $tableau[1], '<br>fonction : ', $tableau[2]; } htmlFin(); ?>

Les valeurs des éléments des tableaux à plusieurs dimensions sont accessibles avec la syntaxe
$t[i_dimension1][i_dimension2]...[i_dimensionN]

Exemple : tableau à plusieurs dimensions
<?php require('bib_fonctions.php'); htmlDebut('Tableau à plusieurs dimensions'); $t['B41d'] = array('Pierre','03 81 60 20 66','Professeur'); $t['C24a'] = array('Paul','03 80 60 20 19','Maitre de conf'); $t['D12z'] = array('Jacques','03 80 60 20 36','Doctorant'); htmlInfo('Le bureau B41d est occupé par '); echo $t['B41d'][0]; htmlInfo('Le téléphone du bureau C24a est le '); echo $t['C24a'][1]; htmlInfo('Dans le bureau D12z il y a un '); echo $t['D12z'][2]; htmlFin(); ?>

PHP fournit la fonction array_chunk() qui permet de construire un tableau à indices numériques à deux dimensions à partir d'un tableau à une dimension. Un premier argument est le nom du tableau à découper, un deuxième argument détermine la taille du tableau de la deuxième dimension, et un troisième argument facultatif indique si les clés doivent être préservées ou non.

Exemple : tableau à plusieurs dimensions
<?php require('bib_fonctions.php'); htmlDebut('Tableau à plusieurs dimensions'); $t[] = 'Pierre'; $t[] = '03 81 60 20 66'; $t[] = 'professeur'; $t[] = 'Paul'; $t[] = '03 80 60 20 19'; $t[] = 'maitre de conf'; $t[] = 'Jacques'; $t[] = '03 80 60 20 36'; $t[] = 'thésard'; infoTableau($t); $tt = array_chunk($t, 3); infoTableau($tt); htmlFin(); ?>