php strcmp使用说明


Posted in PHP onApril 22, 2010

以区分大小写的方式比较两个字符串
Strcmp()函数对两个字符串进行二进制安全的比较,并区分大小写。其形式为:
int strcmp ( string str1 , string str2 )
根据比较的结果将返回如下的一个可能值。
•如果str1 和str2 相等则返回0 。
•如果str1小于str2则返回-1 。
•如果str1大于str2则返回1 。
网站经常要求待注册的用户输入并确认他选择的密码,减少由于键入错误而生成不正确密码的可能性。因为密码通常是区分大小写的,所以strcmp()对于比较这两个密码是非常合适的:

<?php 
$pswd = "supersecret"; 
$pswd2 = "supersecret"; 
if (strcmp($pswd,$pswd2) != 0) 
echo "Your passwords do not match!"; 
else 
echo "Passwords match!"; 
?>

注意,对于strcmp ( ) ,字符串必须完全匹配才认为是相等的。例如,Supersecret 不同于supersecret 。如果要以不区分大小写的方式比较两个字符串,可以考虑下面介绍的strcasecmp ()。
关于这个函数,另一个容易混淆的地方是:两个字符串相等时要返回0 。这与使用==操作符完成字符串比较有所不同,如下:
if ( $str1 = = $str2)
两种方式目标相同,都是比较两个字符串,但要记住,它们返回的值却不同。

实例代码:

<?php 
echo strcmp("Hello world!","Hello world!"); 
//返回0 
?>

下面这个是比较好的strcmp的例子代码:
PHP strcmp根据IP地址控制访问的代码 

简单的补充:
这里的str1和str2比较 实际上是str1和str2 的ASCII值的比较
比如:
strcmp("A","a"); 返回值为 -1
// a的ASCII值是97 A的ASCII值是65
由此例子还可以看出 当用strcmp()比较字符串时,是区分大小写的

接着再看strcmp的深入理解:

strcmp("abc","abc"); 此时 字符串相等 返回值为 0
我们改一下 strcmp("aBc","abc");此时就不相等了 返回值为-1
由于strcmp是让aBc和abc逐一比较的,两个字符串的第一个和第一个比较,第

二个和第二个比较……当每一次比较的ASCII值相等时,才能继续比较下一对

字符。 所以,比较第二对 B和b,不相等,那么比较停止,出现返回值。

if ("abc">"aBC") 比较原理一样

PHP 相关文章推荐
PHP中的日期处理方法集锦
Jan 02 PHP
PHP 文章中的远程图片采集到本地的代码
Jul 30 PHP
让你成为更出色的PHP开发者的10个技巧
Feb 25 PHP
php 生成唯一id的几种解决方法
Mar 08 PHP
浅谈PHP调用Webservice思路及源码分享
Jun 04 PHP
php计算税后工资的方法
Jul 28 PHP
详解PHP的Yii框架中扩展的安装与使用
Apr 01 PHP
支付宝支付开发――当面付条码支付和扫码支付实例
Nov 04 PHP
php中this关键字用法分析
Dec 07 PHP
thinkPHP5.0框架URL访问方法详解
Mar 18 PHP
thinkphp分页集成实例
Jul 24 PHP
PHP框架实现WebSocket在线聊天通讯系统
Nov 21 PHP
PHP 加密解密内部算法
Apr 22 #PHP
PHP 根据IP地址控制访问的代码
Apr 22 #PHP
收集的二十一个实用便利的PHP函数代码
Apr 22 #PHP
让PHP开发者事半功倍的十大技巧小结
Apr 20 #PHP
php快速url重写 更新版[需php 5.30以上]
Apr 20 #PHP
一个PHP的String类代码
Apr 20 #PHP
使用PHP提取视频网站页面中的FLASH地址的代码
Apr 17 #PHP
You might like
用phpmyadmin更改mysql5.0登录密码
2008/03/25 PHP
header中Content-Disposition的作用与使用方法
2012/06/13 PHP
php实现可用于mysql,mssql,pg数据库操作类
2014/12/13 PHP
php中实现可以返回多个值的函数实例
2015/03/21 PHP
thinkphp分页实现效果
2016/10/13 PHP
关于javascript中的typeof和instanceof介绍
2012/12/04 Javascript
js阻止冒泡及jquery阻止事件冒泡示例介绍
2013/11/19 Javascript
JavaScript的Date()方法使用详解
2015/06/09 Javascript
JS实现双击屏幕滚动效果代码
2015/10/28 Javascript
jquery解析XML及获取XML节点名称的实现代码
2016/05/18 Javascript
js仿iphone秒表功能 计算平均数
2017/01/11 Javascript
JavaScript获取当前时间向前推三个月的方法示例
2017/02/04 Javascript
原生js 封装get ,post, delete 请求的实例
2017/08/11 Javascript
使用layui监听器监听select下拉框,事件绑定不成功的解决方法
2019/09/28 Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
2020/02/04 jQuery
JavaScript前端实现压缩图片功能
2020/03/06 Javascript
[47:45]Liquid vs OG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python显示进度条的方法
2014/09/20 Python
python+pandas生成指定日期和重采样的方法
2018/04/11 Python
对命令行模式与python交互模式介绍
2018/05/12 Python
python实现日志按天分割
2019/07/22 Python
Python使用Tkinter实现转盘抽奖器的步骤详解
2020/01/06 Python
PyTorch学习:动态图和静态图的例子
2020/01/06 Python
TensorFlow实现自定义Op方式
2020/02/04 Python
解决jupyter notebook import error但是命令提示符import正常的问题
2020/04/15 Python
Python 爬虫批量爬取网页图片保存到本地的实现代码
2020/12/24 Python
简单掌握CSS3中resize属性的用法
2016/04/01 HTML / CSS
Sahajan美国:阿育吠陀护肤品牌
2021/01/09 全球购物
护士专业推荐信
2013/11/02 职场文书
项目合作计划书
2014/01/09 职场文书
社区活动策划方案
2014/08/21 职场文书
2015年人事工作总结范文
2015/04/09 职场文书
商场广播稿范文
2015/08/19 职场文书
外出听课学习心得体会
2016/01/15 职场文书
2016计划生育先进个人事迹材料
2016/02/29 职场文书
JavaScript实现淘宝商品图切换效果
2021/04/29 Javascript