首页 > 后端开发 > php教程 > 为什么对于从零位置开始的字符串,使用'!== false”检查'strpos()”会失败?

为什么对于从零位置开始的字符串,使用'!== false”检查'strpos()”会失败?

Linda Hamilton
发布: 2024-12-16 10:42:12
原创
348 人浏览过

Why Does Checking `strpos()` with `!== false` Fail for Strings Starting at Position Zero?

松散地检查 strpos() 返回值会产生意想不到的结果

在尝试定位另一个字符串中的字符串出现时,您可能会在使用时遇到差异strpos() 函数。使用 !== false 检查两个字符串是否存在并确保第一个字符串在第二个字符串之前的预期行为可能会产生意想不到的结果。

如 PHP 手册中所述,当字符串不存在时,strpos() 返回 false成立。但是,当字符串从位置 0 开始时(导致 strpos() 返回值为 0),语句 strpos($grafik['data'], $ss1) !== false 可能会被评估为 false。

要纠正此问题,请将代码中的 !== false 替换为 === 0。此修改可确保当 strpos() 返回 0 时该语句的计算结果为 true,表明该字符串出现在指定字符串的开头。

以上是为什么对于从零位置开始的字符串,使用'!== false”检查'strpos()”会失败?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板