php中STRPOS查找失败返回的是FALSE注意事项
strpos() 函数返回字符串在另一个字符串中第一次出现的位置了,但是我们在按官方的手册来测试时发现一直返回false了,那么要如何来解决.
STRPOS用法:strpos(string,find,start)
我们看看strpos的一段代码:
//ajax获取分词 public function get_segment_words() { $title = I('title'); $content = I('content'); $Segment = M('Segment'); $Segment_content = M('Segment_content'); $segment_array = $Segment->getField('id,word'); $setment_words = array(); foreach ($segment_array as $id => $word) { if (false !== strpos($content, $word) || false !== strpos($title, $word)) { $segment_words[] = $word; } } $segment_words = array_unique($segment_words); $segment_words = implode(',', $segment_words); echo $segment_words;exit; //ajax获取填充 }
注意这句代码:
if (false !== strpos($content, $word) || false !== strpos($title, $word)) { //TODO }
如果匹配失败,strpos会返回bool类型的false,这个一定要注意,不然会出现什么情况呢?假如你要匹配的字符正好在第一个位置,对于strpos这个函数来说返回的是0,也就是位置0.这个时候实际上是匹配到了,结果返回0,如果这样判断就错了:
if (!strpos($content, $word))
举个例子:
内容:购物袋范德萨法拉点撒范德萨。
匹配:购物
如果要找内容里面是否有"购物"两个字,strpos会返回0,表示存在"购物"两个字,位置是0,因此要用false!=strpos($find,$content)来判断匹配是否成功.
本文地址:
转载随意,但请附上文章地址:-)

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

