Document
首页 【php】strstr、stristr、strpos这三个函数的区别

【php】strstr、stristr、strpos这三个函数的区别

江小白 2019-03-05 0 75

  strstr -- 返回字符串中从某指定字符开始到结束处的字符串。

  语法:

  string strstr ( string haystack, string needle)

  返回haystack中从needle开始到结束的字符串.

  如果没有返回值,即没有发现needle,则返回FALSE

   


  注意他与strtr的区别是   strtr是.把字符串中的字符 ''ia" 替换成 "eo":

    echo strtr("Hilla Warld","ia","eo");

        结果是helloworld;


  注: 这个函数是大小写敏感的。

  stristr与strstr 的区别就是stristr不分区大小写。

  相对于前两者查找成功后返回的是字符,strpos查找成功后则是返回的是位置。因为位置有可能是0,所以判断查找失败使用===false更合适。

  strpos的性能比较好,如果只是判断needle是否在字符串haystack中,则使用strpos较好,它将占用更少的内存和获得更快的执行速度。但是strpos对特殊字符支持不好,比如对中文就不能很好支持。

  结合上面实例我们得出结论

  strstr 区别大小写,从字符开始找如果有返回true否则就返回false

  stristr 字符不区别大小写,从字符开始找如果有返回true否则就返回false

  strpos 区别大小写strpos查找成功后则是返回的是位置。因为位置有可能是0,所以判断查找失败使用===false更合适。

  if(strstr($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Mozilla/5.0")) //支持特殊字符"/"和中文字符

  if(strpos($HTTP_SERVER_VARS[HTTP_USER_AGENT], "Mozilla/5.0")) //对"/"和中文字符不支持

打赏作者
打赏作者 打赏作者
免责声明:本文仅代表作者个人观点,与本网站无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
作者: 2019-03-05 16:40:54

发表评论

看不清?点击更换

评论列表: