gpt4 book ai didi

php - 为什么php在代码中抛出语法错误

转载 作者:行者123 更新时间:2023-12-02 06:22:24 26 4
gpt4 key购买 nike

echo "<input  type=\"text\" size=3 name=\"{$item[\"name\"]}\"/>";

但以下工作正常

echo "<input  type=\"text\" size=3 name=\"{$item['name']}\"/>";

按我的理解“真的越狱了”

最佳答案

您不需要转义 {} 中的引号。这应该被引用,因为它意味着 PHP 数组 $name 的字符串索引 "name"。如果没有引号(或转义引号),name 将被视为常量(我假设它不是),然后您会得到一对不属于的额外引号。

OTOH,这也是正确的:

echo "<input  type=\"text\" size=\"3\" name=\"$item[name]\"/>";

(name{} 都没有引号)

参见 http://www.php.net/manual/en/language.types.string.php#language.types.string.parsing


回复:评论

任何不带引号或 $ 符号的非关键字都被视为常量(您可以使用 define 函数定义),因此 "name"(带引号)是一个字符串,不带引号的 name 是常量。

然而,当这样写时:

echo "{$item[name]}";

PHP 将首先查找名称为name 的常量,如果不存在,它将使用字符串"name"。但是,它(取决于您的设置?)也会发出警告。

关于php - 为什么php在代码中抛出语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6970976/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com