PHP 使用 strpos() 函数来判断字符串中是否包含有某一字符串

学习笔记 马富天 2017-08-28 09:50:53 100 0

【摘要】无论是刚刚接触 PHP ,还是在 PHP 开发多年的人员一定会经常遇到这么一个问题:如何判断字符串中是否包含另外一个字符串?这个问题非常常见,所有应该把它详细记录下来。本文讲讲最准确的方法:使用 strpos()/stripos() 函数来解决这一问题。

strpos():查找子字符串在另外一个字符串中首次出现的位置

stripos():查找子字符串在另外一个字符串中首次出现的位置(不区分大小写)

strpos($string,$substr,$start):

$string -> 被搜索的字符串

$substr -> 要查找的子字符串

#start -> 在 $string 中开始搜索的位置

例如查询在 'http://www.mafutian.net' 中搜索是否存在 'http://' 或者 'https://',则准确的代码如下:

  1. header('content-type:text/html;charset=utf-8');
  2. $string = 'http://www.mafutian.net';
  3. $find1 = 'http://';
  4. $find2 = 'https://';
  5. in_string($string,$find1);
  6. echo '<br />';
  7. in_string($string,$find2);
  8. echo '<br />';
  9. in_string2($string,$find1);
  10. echo '<br />';
  11. in_string2($string,$find2);
  12. echo '<br />';
  13. function in_string($string,$find)
  14. {
  15. 	if(strpos($string,$find) === false)	//	不存在
  16. 	{
  17. 		echo $find.' 不在 '.$string.' 中';
  18. 	}else
  19. 	{
  20. 		echo $find.' 在 '.$string.' 中';
  21. 	}
  22. }
  23. //	或者使用另外一种方式
  24. function in_string2($string,$find)
  25. {
  26. 	if(strpos($string,$find) !== false)	//	存在
  27. 	{
  28. 		echo $find.' 在 '.$string.' 中';
  29. 	}else
  30. 	{
  31. 		echo $find.' 不在 '.$string.' 中';
  32. 	}
  33. }

执行结果如下图所示:

请输入图片名称

需要注意的是字符串位置起始是 0 不是 1,因此如果没有发现,则返回 false。以上使用 '!==' 和 '===' 两种方式都是可以的。使用 PHP 判断字符串中是否含有某一子字符串的正确方式应该是以上所述的方法。当然 stripos() 是一样的,区别就在于 stripos() 是不区分大小写的,而 strpos() 是区分大小写的。

版权归 马富天PHP博客 所有

本文标题:《PHP 使用 strpos() 函数来判断字符串中是否包含有某一字符串》

本文链接地址:http://www.mafutian.net/312.html

转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

0

0

上一篇《 PHP 实现百度收录批量查询 》 下一篇《 js / javascript 在新的窗口中打开页面 》

暂无评论

评论审核未开启
表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情
验证码

TOP10

  • 浏览最多
  • 评论最多