php怎么判断两字符串是否相等

青灯夜游
发布: 2022-08-17 19:40:36
原创
9302人浏览过
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则相等。

php怎么判断两字符串是否相等

本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑

判断两字符串是否相等?PHP中内置了多个函数可以实现:

也可以使用相等运算符“==”来进行比较判断。下面我们来看看:

1、使用运算符“==”比较字符串是否相等

“==”表示“相等”,是一个比较运算符,用于比较等号两边表达式或变量是否相等。

<?php
header("Content-type:text/html;charset=utf-8");
$pwd1 = 'password';
$pwd2 = 'Password';
if($pwd1==$pwd2){
    echo '密码不匹配!';
} else {
    echo '密码匹配!';
}
?>
登录后复制

1.png

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 '密码匹配!';
}
?>
登录后复制

2.png

注意,对于 strcmp() 函数,待比较的两个字符串必须完全匹配才能被认为是相等的。例如 示例代码中的 $pwd1 和 $pwd2 就是不同的。如果要以不区分大小写的方式比较两个字符串,可以使用 strcasecmp() 函数。

通义万相
通义万相

通义万相,一个不断进化的AI艺术创作大模型

通义万相 596
查看详情 通义万相

3、使用strcasecmp()函数比较字符串是否相等

PHP 中的 strcasecmp() 函数与 strcmp() 函数的功能类似,都可以比较两个字符串,不同的是 strcasecmp() 函数在比较字符串时不会区分大小写,其语法格式如下:

strcasecmp($str1,$str2)
登录后复制

根据比较结果,

  • 如果 $str1 小于 $str2,则返回值 zuojiankuohaophpcn 0;

  • 如果 $str1 大于 $str2,则返回值 > 0;

  • 如果 $str1 于 $str2 相等,则返回 0。

只需要检查strcasecmp()函数的返回值是否等于0即可知道两字符串是否相等。

<?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 '两个网址不同';
}
?>
登录后复制

3.png

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.php.cn/';
$url2 = 'HTTP://www.php.cn/';
if(strncasecmp($url1, $url2,18) == 0){
    echo '两个网址相同';
} else {
    echo '两个网址不同';
}
?>
登录后复制

4.png

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 '密码匹配!';
}
?>
登录后复制

5.png

推荐学习:《PHP视频教程

以上就是php怎么判断两字符串是否相等的详细内容,更多请关注php中文网其它相关文章!

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号