我想将多维数组的一个元素与一些字符串连接起来。
<?
$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);
?>
通过对 $string 使用此语法,我得到:
狗数组[大]猫
我不想使用替代语法
$string = $string1 . ' ' . $string2[$type][$size] . ' ' . $string3;
有效。
“$string1 $string2[$type][$size] $string3”有什么问题?
最佳答案
使用“复杂语法”:
$string = "$string1 {$string2[$type][$size]} $string3";
PHP的变量解析非常简单。它将识别一级数组访问,但不能识别更多级别。通过将表达式括在 {}
中,您可以明确声明字符串的哪一部分是变量。
关于PHP:多维数组元素的串联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4886388/