这篇“php如何判断两字符串是否相等”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php如何判断两字符串是否相等”文章吧。
5种方法:1、用“字符串1==字符串2”,如果返回true则相等。2、用“strcmp(字符串1,字符串2)”,如果返回值为0则相等。3、用“strcasecmp(字符串1,字符串2)”,如果返回值为0则相等。4、用“strncasecmp(字符串1,字符串2,字符个数)”,如果返回值为0则相等。5、用“strncmp(字符串1,字符串2,字符个数)”,如果返回值为0则相等。
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
判断两字符串是否相等?PHP中内置了多个函数可以实现:
strcmp()
strcasecmp()
strncasecmp()
strncmp()
也可以使用相等运算符“==”来进行比较判断。下面我们来看看:
1、使用运算符“==”比较字符串是否相等
“==”表示“相等”,是一个比较运算符,用于比较等号两边表达式或变量是否相等。
<?php
header("Content-type:text/html;charset=utf-8");
$pwd1 = 'password';
$pwd2 = 'Password';
if($pwd1==$pwd2){
echo '密码不匹配!';
} else {
echo '密码匹配!';
}
?>
2、使用strcmp()函数比较字符串是否相等
strcmp() : 比较两个字符串(大小写敏感)。
strcmp(字符串1,字符串2)
返回值分为3种情况:
0
- 如果两个字符串相等
<0
- 如果 字符串1
小于 字符串2
>0
- 如果 字符串1
大于 字符串2
只需要检查strcmp()函数的返回值是否等于0即可知道两字符串是否相等。
<?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($str1,$str2)
根据比较结果,
如果 $str1 小于 $str2,则返回值 < 0;
如果 $str1 大于 $str2,则返回值 > 0;
如果 $str1 于 $str2 相等,则返回 0。
只需要检查strcasecmp()函数的返回值是否等于0即可知道两字符串是否相等。
<?php
header("Content-type:text/html;charset=utf-8");
$url1 = 'http://www.tdyun.com/';
$url2 = 'HTTP://www.tdyun.com/';
if(strcasecmp($url1, $url2) == 0){
echo '两个网址相同';
} else {
echo '两个网址不同';
}
?>
4、使用strncasecmp()函数比较字符串是否相等
strncasecmp() 函数比较两个字符串(不区分大小写)。
该函数与 strcasecmp() 函数类似,不同的是,strcasecmp() 没有 length 参数(不能指定每个字符串用于比较的字符数)。
strncasecmp(string1,string2,length)
参数 | 描述 |
---|
string1 | 必需。规定要比较的第一个字符串。 |
string2 | 必需。规定要比较的第二个字符串。 |
length | 必需。规定每个字符串用于比较的字符数。 |
返回值和strcasecmp() 函数一样
<?php
header("Content-type:text/html;charset=utf-8");
$url1 = 'http://www.tdyun.com/';
$url2 = 'HTTP://www.tdyun.com/';
if(strncasecmp($url1, $url2,18) == 0){
echo '两个网址相同';
} else {
echo '两个网址不同';
}
?>
5、使用strncmp()函数比较字符串是否相等
strncmp() 函数比较两个字符串(区分大小写)。
该函数与 strcmp() 函数类似,不同的是,strcmp() 没有 length 参数(不能指定每个字符串用于比较的字符数)。
strncmp(string1,string2,length)
参数 | 描述 |
---|
string1 | 必需。规定要比较的第一个字符串。 |
string2 | 必需。规定要比较的第二个字符串。 |
length | 必需。规定每个字符串用于比较的字符数。 |
返回值和strcmp() 函数一样
<?php
header("Content-type:text/html;charset=utf-8");
$pwd1 = 'password';
$pwd2 = 'Password';
if(strncmp($pwd1, $pwd2,8) != 0){
echo '密码不匹配!';
} else {
echo '密码匹配!';
}
?>
以上就是关于“php如何判断两字符串是否相等”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注天达云行业资讯频道。