方法:1、用“strcasecmp(string1,string2)”语句;2、用“strncasecmp(string1,string2,length)”语句;3、用“strnatcasecmp(string1,string2)”语句。
本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑
方法1:使用strcasecmp()函数
strcasecmp() 函数在比较字符串时不会区分大小写,其语法格式如下:
strcasecmp(string $str1, string $str2)
登录后复制
其中,$str1 和 $str2 分别是要比较的两个字符串。
立即学习“PHP免费学习笔记(深入)”;
根据比较结果,如果 $str1 小于 $str2,则返回值 0;如果 $str1 于 $str2 相等,则返回 0。
网站的网址都是不区分大小写的,因此我们可以使用 strcasecmp() 函数来比较两个网址是否相同,示例代码如下:
登录后复制
输出:
两个网址相同
登录后复制
方法2:使用strncasecmp()函数
strncasecmp() 函数比较两个字符串(不区分大小写)。
语法
strncasecmp(string1,string2,length)
登录后复制
参数 描述string1必需。规定要比较的第一个字符串。string2必需。规定要比较的第二个字符串。length必需。规定每个字符串用于比较的字符数。
返回值:该函数返回:
0 – 如果两个字符串相等
>0 – 如果 string1 大于 string2
示例:
<?php echo strncasecmp("Hello","Hello",6);echo "
";echo strncasecmp("Hello","hELLo",6);?>
登录后复制
输出:
00
登录后复制
方法3:使用strnatcasecmp()函数
strnatcasecmp() 函数使用一种”自然”算法来比较两个字符串(不区分大小写)。
在自然算法中,数字 2 小于数字 10。在计算机排序中,10 小于 2,这是因为 10 中的第一个数字小于 2。
语法
strnatcasecmp(string1,string2)
登录后复制
参数 描述string1必需。规定要比较的第一个字符串。string2必需。规定要比较的第二个字符串。
返回值:
0 – 如果两个字符串相等
>0 – 如果 string1 大于 string2
示例:
<?php echo strnatcasecmp("2Hello world!","10Hello WORLD!");echo "
";echo strnatcasecmp("10Hello world!","2Hello WORLD!");?>
登录后复制
输出:
-11
登录后复制
说明:自然算法(strnatcmp)和常规计算机字符串排序算法(strcmp)的不同
<?php $arr1 = $arr2 = array("pic1","pic2","pic10","pic01","pic100","pic20","pic30","pic200");echo "Standard string comparison"."
";usort($arr1,"strcmp");print_r($arr1);echo "
";echo "
";echo "Natural order string comparison"."
";usort($arr2,"strnatcmp");print_r($arr2);?>
登录后复制
输出:
Standard string comparisonArray ( [0] => pic01 [1] => pic1 [2] => pic10 [3] => pic100 [4] => pic2 [5] => pic20 [6] => pic200 [7] => pic30 )Natural order string comparisonArray ( [0] => pic01 [1] => pic1 [2] => pic2 [3] => pic10 [4] => pic20 [5] => pic30 [6] => pic100 [7] => pic200 )
登录后复制
推荐学习:《PHP视频教程》
以上就是php字符串怎么进行大小写不敏感比较的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2112866.html