strpos和strstr两个函数的区别
1个回答
展开全部
string strstr(string haystack,string needle) 返回haystack中从第一 个needle开头到haystack末尾的字符串。 如果未找到needle 返回false。 int strpos(string haystack, string needle [,int offset]) 返回haystack中第一个出现needle的位置数字量。 如果未找到needle返回false。 strchr 返回找到字符第1次出现和后面的字符串(字符串) strpos 返回找到字符串出现第1次字符位置(数字) strstr -- 返回字符串中从某指定字符开始到结束处的字符串。 语法: string strstr ( string haystack, string needle) 返回haystack中从needle开始到结束的字符串. 如果没有返回值,即没有发现needle,则返回FALSE 注: 这个函数是大小写敏感的。 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")) //对"/"和中文字符不支持
启帆信息
2024-11-19 广告
2024-11-19 广告
启帆信息是英伟达中国区代理商,原厂授权代理,提供全面的软件技术解决方案以及NVIDIA以太网产品、交换机等产品,欢迎前来咨询!...
点击进入详情页
本回答由启帆信息提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询