Echo некоторый строковый и многомерный элемент массива в одной строке кода

Я некоторое время боролся с какой-то странной вещью о php.

Кажется, что он не может отобразить некоторую строку и многомерный элемент массива, используя одну строку кода.

Например, у нас есть простой трехмерный массив:

$ARRAY = array('first' => array(array('Hello, World!')));

Теперь, если я хочу отобразить некоторую строку и этот элемент третьего уровня, мне нужно будет сделать что-то вроде этого:

 $a = $ARRAY['first'][0][0]; echo"Some string: $a"; 

Или это:

 echo"Some string: "; echo($ARRAY['first'][0][0]); 

Так есть ли способ сделать это только в одной строке кода? Спасибо!

 echo "Some string: {$ARRAY['first'][0][0]}"; 

Читайте больше на PHP.Net.

Сложный (фигурный) синтаксис

Это не называется сложным, потому что синтаксис является сложным, а потому, что он позволяет использовать сложные выражения.

С помощью этого синтаксиса можно включить любую скалярную переменную, элемент массива или свойство объекта со строковым представлением. Просто напишите выражение так же, как оно появится вне строки, а затем оберните его в {и}. Поскольку {не может быть экранирован, этот синтаксис будет распознаваться только тогда, когда $ немедленно следует за символом {. Используйте {\ $ для получения литерала {$. Некоторые примеры, чтобы дать понять:

Использовать конкатенацию :

 echo "Some string: " . $ARRAY['first'][0][0]); 

или

 echo "Some string: ", $ARRAY['first'][0][0]); 

echo "Some string: {$ARRAY['first'][0][0]}";