Я тоже ожидал массивы многомерными, что бы там Johnny не говорил про условности многомерности.
Всё таки гораздо удобнее работать с индексами каждой размерности, чем самому высчитывать смещение.
Пример:
$ARR[0][0]= 1
//...
$ARR[10][7]= 100
$i = 4
FOR ($i, $i<10)
FOR ($t, $t<7)
$result = $result + $ARR[$i-1][$t-1]
END_CYC
END_CYC
Вот это:
$ARR[$i-1][$t-1]
выглядит, читается и отлаживается лучше, чем
$ARR[($i-1)*8+($t-1)]
и то я не уверен, что не напутал. Так это довольно простой случай.
Трёхмерный я использовал.
В любом случае часть функций существует для удобства. Хоть и могут использоваться редко.
Мне например был нужен модуль числа, выкручивался так:
$var = SQRT($var*$var)
P.S. Я могу представить 4 мерный и больше массив. Представить 10 строк в 5 колонок и в каждой ячейке по 3 значения легко. Дальше и правда сложнее что каждое значение может состоять из 12 элементов. На этом этапе общее представление "разваливается" переходя к частному.
На помощь приходит привычная для мозга аналогия.
Представить несколько городов[5] в котором есть улица Ленина[5][0] и улица Мира[5][1]. На каждой улице есть по 15 домов [5][1][15] В домах по 4 подъезда [5][1][15][4] по 20 квартир [5][1][15][4][20].
Вот и 5-и мерный массив
И в голове всё понятно. И обращаться к каждому элементу легко. Можно ещё расширить "наружу" Начать со стран-континентов-планет
Но конечно же не нужно обычно.
... Но 2-3 мерные нужны.