一个小时以来,我一直在寻找我的代码中的错误。这是错误:
写作:
if(isset(($_POST['to'])))
代替
if(isset($_POST['to']))
我不明白为什么这对额外的括号会导致内部服务器错误。
我不认为用括号括住变量永远不会改变它的值。我的意思是,
$a = $b;
$c = ($b);
$a==$c; //True
我很好奇为什么会报错?
谢谢。
编辑:
上述错误也发生在普通变量上。
最佳答案
这是因为isset
不是函数而是语言结构;因此,它的定义可以在 language parser 中找到。 .
T_ISSET '(' isset_variables ')' { $$ = $3; }
它只需要一对牙套;传递另一对将导致解析错误。
关于php - 500 - 带有额外一对括号的内部服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21701837/