说明:函数对大小写敏感。
查找字符串在另一字符串中第一次出现的位置,如果没有找到字符串则返回 FALSE。
语法:
参数 | 描述 |
---|---|
string | 必需。规定要搜索的字符串。 |
find | 必需。规定要查找的字符串。 |
start | 可选。规定在何处开始搜索。 |
【错误写法:】
很多时候拿这个函数用来判断字符串中是否存在某个字符,其中有很多人会这样写:
<?php /*******************【错误写法】*********************/ // 判断‘51源码网’中是否存在‘码网’这两个字 if (strpos('51源码网', '码网')) { echo '存在'; }else{ // 如果不存在执行此处代码 echo '不存在'; } // 判断‘51源码网’中是否存在‘网’这个字 if (strpos('51源码网', '网')) {
echo '存在'; }else{ echo '不存在'; } ?>
第1个判断代码输出的是'存在'。没什么问题;但是再看下面这段代码;
第2个判断代码输出的是'不存在'。原因是因为 '小' 在 '小川博客' 中的第0个位置,而0在if中表示了false。
如果用strpos来判断字符串中是否存在某个字符时要用:===false
【正确写法:】
<?php /*******************【正确写法】*********************/ // 判断‘51源码网’中是否存在‘码网’这两个字 if (strpos('51源码网', '码网')===false) { echo '不存在'; }else{ echo '存在'; } // 判断‘51源码网’中是否存在‘5’这个字 if (strpos('51源码网', '5')===false) { echo '不存在'; }else{ echo '存在'; } ?>