判断方法:1、使用“===”运算符,语法“字符串1===字符串2”;2、使用strcmp()函数,语法“strcmp(字符串1,字符串2)”;3、使用strcasecmp()函数,语法“strcasecmp(字符串1,字符串2)”。
本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
php中判断字符串等不等于(相等)
方法1:使用“===”运算符
“===”是全等运算符,如果 $a 和 $b 不仅值相等,而且它们值的类型也相等,则返回 TRUE,否则返回 FALSE。
<?php header("Content-type:text/html;charset=utf-8"); $pwd1 = 'password'; $pwd2 = 'Password'; if($pwd1===$pwd2){ echo '密码不匹配!'; } else { echo '密码匹配!'; } ?>
方法2:使用strcmp()函数
strcmp() 函数可以对两个字符串进行二进制安全的比较,并且区分大小写,其语法格式如下:
strcmp(string $str1, string $str2)
其中 $str1 和 $str2 分别是要比较的两个字符串。
根据比较结果 strcmp() 函数会返回不同的值,如果 $str1 小于 $str2,则返回值 < 0;如果 $str1 大于 $str2,则返回值 > 0;如果 $str1 与 $str2 相等,则返回 0。
当我们在某个网站上注册账号时,对于用户密码通常需要输入两次来确认,以此减少由于输入错误而造成的密码设定错误。因为密码通常是区分大小写的,所以可以使用 strcmp() 函数来比较两次输入的密码,示例代码如下所示:
<?php header("Content-type:text/html;charset=utf-8"); $pwd1 = 'password'; $pwd2 = 'Password'; if(strcmp($pwd1, $pwd2) != 0){ echo '密码不匹配!'; } else { echo '密码匹配!'; } ?>
注意,对于 strcmp() 函数,待比较的两个字符串必须完全匹配才能被认为是相等的。例如 示例代码中的 $pwd1 和 $pwd2 就是不同的。如果要以不区分大小写的方式比较两个字符串,可以使用 strcasecmp() 函数。
方法3:使用strcasecmp()函数
PHP 中的 strcasecmp() 函数与 strcmp() 函数的功能类似,都可以比较两个字符串,不同的是 strcasecmp() 函数在比较字符串时不会区分大小写,其语法格式如下:
strcasecmp(string $str1, string $str2)
其中,$str1 和 $str2 分别是要比较的两个字符串。
根据比较结果,如果 $str1 小于 $str2,则返回值 < 0;如果 $str1 大于 $str2,则返回值 > 0;如果 $str1 于 $str2 相等,则返回 0。
网站的网址都是不区分大小写的,因此我们可以使用 strcasecmp() 函数来比较两个网址是否相同,示例代码如下:
<?php header("Content-type:text/html;charset=utf-8"); $url1 = 'http://www.php.cn/'; $url2 = 'HTTP://www.php.cn/'; if(strcasecmp($url1, $url2) == 0){ echo '两个网址相同'; } else { echo '两个网址不同'; } ?>
推荐学习:《PHP视频教程》