1、以区分大小写的方式比较两个字符串
strcmp() 函数可以对两个字符串进行二进制安全的比较,并且区分大小写,其语法格式如下:
strcmp(string $str1, string $str2)
其中 $str1 和 $str2 分别是要比较的两个字符串。
根据比较结果 strcmp() 函数会返回不同的值,如果 $str1 小于 $str2,则返回值 < 0;如果 $str1 大于 $str2,则返回值 > 0;如果 $str1 与 $str2 相等,则返回 0。
当我们在某个网站上注册账号时,对于用户密码通常需要输入两次来确认,以此减少由于输入错误而造成的密码设定错误。因为密码通常是区分大小写的,所以可以使用 strcmp() 函数来比较两次输入的密码,示例代码如下所示:
<?php $pwd1 = 'password'; $pwd2 = 'Password'; if(strcmp($pwd1, $pwd2) != 0){ echo '密码不匹配!'; } else { echo '密码匹配!'; } ?>
注意,对于 strcmp() 函数,待比较的两个字符串必须完全匹配才能被认为是相等的。例如 示例代码中的 $pwd1 和 $pwd2 就是不同的。如果要以不区分大小写的方式比较两个字符串,可以使用 strcasecmp() 函数。
2、以不区分大小写的方式比较两个字符串
PHP 中的 strcasecmp() 函数与 strcmp() 函数的功能类似,都可以比较两个字符串,不同的是 strcasecmp() 函数在比较字符串时不会区分大小写,其语法格式如下:
strcasecmp(string $str1, string $str2)
其中,$str1 和 $str2 分别是要比较的两个字符串。
根据比较结果,如果 $str1 小于 $str2,则返回值 < 0;如果 $str1 大于 $str2,则返回值 > 0;如果 $str1 于 $str2 相等,则返回 0。
网站的网址都是不区分大小写的,因此我们可以使用 strcasecmp() 函数来比较两个网址是否相同,示例代码如下:
<?php $url1 = 'http://c.biancheng.net/php/'; $url2 = 'HTTP://c.biancheng.net/PHP/'; if(strcasecmp($url1, $url2) == 0){ echo '两个网址相同'; } else { echo '两个网址不同'; } ?>
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/24000.html