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 回答