PHP比较两个字符串
在任何语言中,字符串比较都是字符串处理功能中重要的特性之一。有很多方法可以比较两个字符串,PHP 中提供了两个函数来实现字符串比较功能,分别是 strcmp() 和 strcasecmp() 函数,下面就来分别介绍一下。
根据比较结果 strcmp() 函数会返回不同的值,如果 $str1 小于 $str2,则返回值 < 0;如果 $str1 大于 $str2,则返回值 > 0;如果 $str1 与 $str2 相等,则返回 0。
当我们在某个网站上注册账号时,对于用户密码通常需要输入两次来确认,以此减少由于输入错误而造成的密码设定错误。因为密码通常是区分大小写的,所以可以使用 strcmp() 函数来比较两次输入的密码,示例代码如下所示:
根据比较结果,如果 $str1 小于 $str2,则返回值 < 0;如果 $str1 大于 $str2,则返回值 > 0;如果 $str1 于 $str2 相等,则返回 0。
网站的网址都是不区分大小写的,因此我们可以使用 strcasecmp() 函数来比较两个网址是否相同,示例代码如下:
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 = 'https://www.xinbaoku.com/php/'; $url2 = 'https://www.xinbaoku.com/PHP/'; if(strcasecmp($url1, $url2) == 0){ echo '两个网址相同'; } else { echo '两个网址不同'; } ?>
所有教程
- C语言入门
- C语言编译器
- C语言项目案例
- 数据结构
- C++
- STL
- C++11
- socket
- GCC
- GDB
- Makefile
- OpenCV
- Qt教程
- Unity 3D
- UE4
- 游戏引擎
- Python
- Python并发编程
- TensorFlow
- Django
- NumPy
- Linux
- Shell
- Java教程
- 设计模式
- Java Swing
- Servlet
- JSP教程
- Struts2
- Maven
- Spring
- Spring MVC
- Spring Boot
- Spring Cloud
- Hibernate
- Mybatis
- MySQL教程
- MySQL函数
- NoSQL
- Redis
- MongoDB
- HBase
- Go语言
- C#
- MATLAB
- JavaScript
- Bootstrap
- HTML
- CSS教程
- PHP
- 汇编语言
- TCP/IP
- vi命令
- Android教程
- 区块链
- Docker
- 大数据
- 云计算