-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")

ご覧のとおり、2 か所の前には通常の空白ではなく、別の文字 (ノンブレーク スペース$a1と呼ばれる特殊文字) が付きます。これは通常の空白と見た目に違いはなく、コードを質問に貼り付けると、StackOverflow エンジンによって切り捨てられます。しかし、パーサーがコードを解釈する方法が台無しになるため、エラーが発生します。

于 2015-09-07T18:52:45.090 に答える