Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何更改我的php服务器设置,以便写入$x[y]==$x['y']?_Php_Variables_Settings - Fatal编程技术网

如何更改我的php服务器设置,以便写入$x[y]==$x['y']?

如何更改我的php服务器设置,以便写入$x[y]==$x['y']?,php,variables,settings,Php,Variables,Settings,如标题所述: 如何更改我的php服务器设置,以便写入$x[y]==$x['y'] 编辑: 不,我并不懒惰,我得到了一堆这样编写的代码。我认为这是不可能的。您必须将y定义为一个值为“y”的常数。 乙二醇 我们知道这很愚蠢。不清楚你的意思 $x[y] 及 与服务器设置无关 这都是关于没有错误的代码 $x[y] 正在查找一个名为y的常量,如果该常量不存在,它会发出警告并再次尝试,假设您键入错误,并且y是一个值为y的字符串 $x['y'] 修复您的代码并使用“y”,这样PHP就不必猜测您的意

如标题所述:

如何更改我的php服务器设置,以便写入$x[y]==$x['y']

编辑:


不,我并不懒惰,我得到了一堆这样编写的代码。

我认为这是不可能的。您必须将y定义为一个值为“y”的常数。 乙二醇


我们知道这很愚蠢。

不清楚你的意思

$x[y] 

与服务器设置无关

这都是关于没有错误的代码

$x[y] 
正在查找一个名为y的常量,如果该常量不存在,它会发出警告并再次尝试,假设您键入错误,并且y是一个值为y的字符串

$x['y'] 

修复您的代码并使用“y”,这样PHP就不必猜测您的意思,也不必发出警告来告诉您您做错了什么

没有服务器设置可以做到这一点。旋风所说的是正确的

为什么$foo[bar]错了

始终在字符串文字数组索引周围使用引号。例如,$foo['bar']是正确的,而$foo[bar]不是。但是为什么呢?在旧脚本中经常遇到这种语法:

<?php
$foo[bar] = 'enemy';
echo $foo[bar];
// etc
?>
这是错误的,但它是有效的。原因是这段代码有一个未定义的常量条,而不是字符串“条”——请注意引号。PHP将来可能会定义常量,不幸的是,对于此类代码来说,这些常量具有相同的名称。它之所以能够工作,是因为PHP会自动将空字符串(与任何已知符号都不对应的无引号字符串)转换为包含空字符串的字符串。例如,如果没有定义名为bar的常量,那么PHP将替换字符串“bar”并使用它


.

你为什么要做这件事

您正在创建错误的代码。T

这里没有服务器设置


即使你用“y”来定义,“y”;这不是一个标准。改变和清理你的代码,而不是去做这样的事情

您应该只在编写字符串时使用该方法,而PHP不会寻找常量。例如,可以这样写:

echo "Hello $row[first_name] $row[last_name]!";

但是,在其他任何时候引用数组索引时,请始终使用引号。

永远不要这样做。不带引号的实体是常量。没有理由否决,这个问题在PHP环境中是合法的,这实际上允许您编写自己的PHP派生语言,其中常量是字符串?或者不要太懒了,以至于打一对会让你痛苦。@ElzoValugi:只有当你瞎了眼的时候。此外,OP没有询问她/他想知道什么可以澄清问题。@hakre否决权应保留在极端情况下。这不是用来代替交流和编辑的。好了,伙计们。谢谢你向我解释,我收到了一堆高级程序员写的那样的代码,所以我只是在检查我是疯了还是$如果你试图访问常数条,foo[bar]没有错。这就是我要说的,读到最后。
<?php
$foo[bar] = 'enemy';
echo $foo[bar];
// etc
?>
echo "Hello $row[first_name] $row[last_name]!";