问答详情
源自:6-3 [正则表达式] 工具类开发—核心匹配方法

老师,关于本节比较和赋值的问题?虚心求教

$this->isMath = preg_match($pattern, $subject) === 1;

preg_match只匹配一次,返回值是0或者是1,直接将是否匹配交给$this->isMath不就可以了吗,为什么还要做比较===1,呢?

不解,很苦恼。

提问者:ThinkSummer 2015-08-23 14:44

个回答

  • ThinkSummer
    2015-08-23 14:56:40

    好像有点明白了,通过===的比较,将值转化成布尔值;

    等下我再用别的方法调试下,看看结果吧。


  • ThinkSummer
    2015-08-23 14:53:10

    preg_match()返回 pattern 的匹配次数。
    它的值将是0次(不匹配)或1次,因为preg_match()在第一次匹配后将会停止搜索。preg_match_all()不同于此,它会一直搜索subject直到到达结尾。
    如果发生错误preg_match()返回 FALSE。

    查手册的结果。