Moniulotteiset taulukot PHP:ssä
Taulukon elementit voivat olla ei vain merkkijonoja
ja numeroita, vaan myös taulukoita. Tässä tapauksessa
saamme taulukon taulukoista tai moniulotteisen
taulukon. Seuraavassa esimerkissä taulukko $arr
koostuu kolmesta elementistä, jotka puolestaan
ovat taulukoita:
<?php
$arr = [['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h', 'i']];
?>
Kirjoitetaan uudelleen selkeämmässä muodossa:
<?php
$arr = [
['a', 'b', 'c'],
['d', 'e', 'f'],
['g', 'h', 'i'],
];
?>
Riippuen sisäkkäisyystasosta taulukot voivat olla kaksiulotteisia - taulukko taulukoita, kolmiulotteisia - taulukko taulukoiden taulukoita (ja niin edelleen - neliulotteisia, viisiulotteisia jne).
Yllä oleva taulukko on kaksiulotteinen, koska yhden taulukon sisällä on muita alitaulukoita ja näissä alitaulukoissa ei ole muita taulukoita. Jos haluat tulostaa minkä tahansa elementin kaksiulotteisesta taulukosta, tulee kirjoittaa ei enää yksi hakasulkupari, vaan kaksi:
<?php
$arr = [
['a', 'b', 'c'],
['d', 'e', 'f'],
['g', 'h', 'i'],
];
echo $arr[0][1]; // tulostaa 'b'
echo $arr[1][2]; // tulostaa 'f'
?>
Annettu seuraava taulukko:
<?php
$arr = [
['a', 'b', 'c'],
['d', 'e', 'f'],
['g', 'h', 'i'],
['j', 'k', 'l'],
];
?>
Tulosta sen avulla elementit, joiden teksti on
'l', 'e', 'g' ja 'a'.
Annettu seuraava taulukko:
<?php
$arr = [[1, 2], [3, 4], [5, 6]];
?>
Löydä kaikkien sen elementtien summa.