PHP:{$foo}和${foo} 之间有区别
发布时间:2020-12-13 16:36:28 所属栏目:PHP教程 来源:网络整理
导读:参见英文答案 Curly braces in string in PHP5个 有时您需要清楚PHP是什么实际的变量名.我发现一个同事和我一直在做点差别. 假设你有一个变量$foo,并希望输出附加的_constant_string 我一直在使用 return "input type='hidden' name='${foo}_constant_string
参见英文答案 >
Curly braces in string in PHP5个
有时您需要清楚PHP是什么实际的变量名.我发现一个同事和我一直在做点差别. 假设你有一个变量$foo,并希望输出附加的_constant_string 我一直在使用 return "<input type='hidden' name='${foo}_constant_string' value='true' />"; 而我的同事正在使用 return "<input type='hidden' name='{$foo}_constant_string' value='true' />"; (略为简化的例子). 我的快速测试没有明显的区别,但我很好奇:有什么区别吗?是否有理由选择一个呢? 编辑:
看来,任何PHP版本都没有区别
$foo = 'test'; var_dump("$foo"); var_dump("{$foo}"); var_dump("${foo}"); 测试:https://3v4l.org/vMO2D 无论如何,我更喜欢“{$foo}”,因为我认为它更易于阅读,并且在许多其他语法没有的情况下也可以使用. 作为一个例子,我们来尝试对象属性访问: var_dump("$foo->bar"); //syntax error var_dump("{$foo->bar}"); // works great var_dump("${foo->bar}"); //syntax error 同样的情况就是数组. http://www.php.net/manual/en/language.types.string.php#language.types.string.parsing.complex (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |