【PHP】字符串-访问子串
问题
想知道一个字符串是否包含一个特定的子串。例如,想查看一个email地址是否包含一个 @ 。
解决
if(strpos($_POST['email'],'@') === false) {
echo 'There was no @ in the e-mail address!';
}
讨论
strpos()
的返回值是子串在字符串中出现的第一个位置- 如果字符串中根本没有子串,
strpos()
将返回false
- 如果子串位于这个字符串的起始位置,
strpos()
将返回0
,因为位置0
表示字符串的起始位置。 - 为了区别
0
和false
,必须使用 恒等操作符( === )
或 非恒等操作符( !== )
- 上述例子中使用
===
将strpos()
的返回值与false
比较。只有当strpos()
返回false
时这个测试才会成功,如果strpos()
的返回0
或者其他任何数,测试都不会成功
参考
作者:bookfrank
出处:http://bookfrank.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则将其追究法律责任!