Это может привести к ошибке, если $segs
является числовым массивом только с непрерывными индексами.
Это означает, что произойдет сбой для:
array("foo","bar");
, но будет работать для
array("foo", 2=>"bar");
Если предположить, что мы имеем дело с первым случаем, то это будет работать:
$target[$segs[count($segs) - 1]]
Сначала count($segs) - 1
будет вычислено и вернет число.В этом случае последний индекс из $segs
(при условии, что это числовой массив).
$segs[count($segs) - 1]
поэтому вернет последний элемент в $segs
,И какое бы это значение ни было, оно будет использовано как индекс для $target[...]
.
Подводя итог: Это индексирование вложенного массива и вычисление наизнанку.
См. Это в действии.
Необходим ли такой метод или нет, зависит от проблемы, которую вы пытаетесь решить.Если вы не знаете, где использовать такую вложенную переменную индексацию массива, вам, вероятно, это не нужно.