0

以下のコードは、私が使用するすべての$name変数に一致するものを返します。理由と必要な修正について説明してもらえますか?ありがとうございました!

$name = 'Johns Donuts';

if (preg_match("/INTERNAL USE ONLY | /",$name) ==1 ) {

    echo 'I match internal use only: '.$name.'';

} else {

    echo 'I DONT match internal use only: '.$name.'';
}
4

1 に答える 1

2

問題はパイプ文字にあります。これは、メモリが正しく機能する場合、事実上「または」演算子です。反対側にスペースがあるとすると、それは文字列のどこかに一致します。

解決策:円記号でエスケープします。

于 2013-03-08T16:41:51.503 に答える