我在使用多个or
条件时遇到问题。
这里的代码,非常简单:
<?php
$a = "a";
if($a == "a" || $a == "b" || $a == "c" || $a == "d" || $a == "e")
{echo "test";}
?>
但 PHP 显示此错误:
解析错误:语法错误,第 5 行 /home/guest/public_html/or.php 中的意外 '$a' (T_VARIABLE)
我在使用多个or
条件时遇到问题。
这里的代码,非常简单:
<?php
$a = "a";
if($a == "a" || $a == "b" || $a == "c" || $a == "d" || $a == "e")
{echo "test";}
?>
但 PHP 显示此错误:
解析错误:语法错误,第 5 行 /home/guest/public_html/or.php 中的意外 '$a' (T_VARIABLE)
所以我在评论中是对的:这是一个(又一个)隐形角色案例。以下是您文件中真正存储的内容:
if($a == "a" ||\u00A0$a == "b" ||\u00A0$a == "c" || $a == "d" || $a == "e")
如您所见,在两个地方$a
之前不是普通的空格,而是其他东西 - 一个特殊字符,即所谓的不间断空格。它在视觉上与普通空格没有什么不同,当您将代码粘贴到问题中时,它会被 StackOverflow 引擎截断。但它搞乱了解析器如何解释你的代码——因此是一个错误。
我假设这是您代码的摘录,并且line 5
(很可能)是$a="a";
. 检查该行之前的不完整{}
或缺失。;