PHP:多维数组元素的连接

Kyn*_*kos 2 php concatenation multidimensional-array

我想用多个字符串连接多维数组的一个元素.

<?
$string1 = 'dog';
$string2 = array
           (
            'farm' => array('big'=>'cow', 'small'=>'duck'),
            'jungle' => array('big'=>'bear', 'small'=>'fox')
           );
$string3 = 'cat';
$type = 'farm';
$size = 'big';
$string = "$string1 $string2[$type][$size] $string3";
echo($string);
?>
Run Code Online (Sandbox Code Playgroud)

通过对$ string使用此语法,我得到:

狗阵[大]猫

我不想使用替代语法

$string = $string1 . ' ' . $string2[$type][$size] . ' ' . $string3;
Run Code Online (Sandbox Code Playgroud)

哪个有效.

"$ string1 $ string2 [$ type] [$ size] $ string3"有什么问题?

Fel*_*ing 6

使用"复杂语法":

$string = "$string1 {$string2[$type][$size]} $string3";
Run Code Online (Sandbox Code Playgroud)

PHP的变量解析非常简单.它将识别一级数组访问,但不会识别更多级别.通过将表达式包含在{}您明确说明字符串的哪一部分是变量.

请参阅PHP - 变量解析.