-2

我在使用多个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)

4

2 回答 2

1

所以我在评论中是对的:这是一个(又一个)隐形角色案例。以下是您文件中真正存储的内容:

if($a == "a" ||\u00A0$a == "b" ||\u00A0$a == "c" || $a == "d" || $a == "e")

如您所见,在两个地方$a之前不是普通的空格,而是其他东西 - 一个特殊字符,即所谓的不间断空格。它在视觉上与普通空格没有什么不同,当您将代码粘贴到问题中时,它会被 StackOverflow 引擎截断。但它搞乱了解析器如何解释你的代码——因此是一个错误。

于 2015-09-07T18:52:45.090 回答
0

我假设这是您代码的摘录,并且line 5(很可能)是$a="a";. 检查该行之前的不完整{}或缺失。;

于 2015-09-07T18:48:36.177 回答