这些PHP字符串插值语法之间有什么区别

时间:2016-09-16 13:54:40

标签: php interpolation

PHP的字符串插值中"${varname}""{$varname}"之间有什么区别? (注意$

的位置

php文档说你可以使用其中任何一个,但是没有清楚地解释这两种方法之间的区别。实际上有区别吗?

1 个答案:

答案 0 :(得分:4)

第一个是插值加变量变量(动态变量),这意味着您可以在此处使用表达式来定义要插入的变量的名称"${func()}"而第二个语法用于表示与变量不同的变量文字"some{$variable}text"。你可以实际组合它们:

function func(){
    return 'foo';
}
$foo = 'bar';
echo "some{${func()}}text";

输出:somebartext