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 magic_quotes_gpc的一点认识与分析
Aug 18 PHP
php chr() ord()中文截取乱码问题解决方法
Sep 08 PHP
php fckeditor 调用的函数
Jun 21 PHP
php 修改zen-cart下单和付款流程以防止漏单
Mar 08 PHP
PHP中函数rand和mt_rand的区别比较
Dec 26 PHP
Windows下的PHP安装pear教程
Oct 24 PHP
php以fastCGI的方式运行时文件系统权限问题及解决方法
May 11 PHP
php HTML无刷新提交表单
Apr 05 PHP
PHP编程计算日期间隔天数的方法
Apr 26 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
Apr 08 PHP
PHP全局使用Laravel辅助函数dd
Dec 26 PHP
PHP重载基础知识回顾
Sep 10 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
PHP中的加密功能
2006/10/09 PHP
PHP 类型转换函数intval
2009/06/20 PHP
php操作redis常见方法示例【key与value操作】
2020/04/14 PHP
IE不支持getElementsByClassName最终完美解决方案
2012/12/17 Javascript
利用百度地图JSAPI生成h7n9禽流感分布图实现代码
2013/04/15 Javascript
JS网页图片按比例自适应缩放实现方法
2014/01/15 Javascript
jquery的幻灯片图片切换效果代码分享
2015/09/07 Javascript
关于Function中的bind()示例详解
2016/12/02 Javascript
详解vue2.0脚手架的webpack 配置文件分析
2017/05/27 Javascript
Vue.js项目模板搭建图文教程
2017/09/20 Javascript
js实现把时间戳转换为yyyy-MM-dd hh:mm 格式(es6语法)
2017/12/28 Javascript
利用Dectorator分模块存储Vuex状态的实现
2019/02/05 Javascript
javascript中call,apply,callee,caller用法实例分析
2019/07/24 Javascript
TypeScript类型声明书写详解
2019/08/28 Javascript
layui多iframe页面控制定时器运行的方法
2019/09/05 Javascript
vue-devtools的安装和使用步骤详解
2019/10/17 Javascript
[12:36]《DOTA2》国服注册与激活指南全攻略
2013/04/28 DOTA
python采用requests库模拟登录和抓取数据的简单示例
2014/07/05 Python
Python sys.argv用法实例
2015/05/28 Python
django重新生成数据库中的某张表方法
2019/08/28 Python
Python 求数组局部最大值的实例
2019/11/26 Python
python 可视化库PyG2Plot的使用
2021/01/21 Python
CSS3弹性盒模型开发笔记(三)
2016/04/26 HTML / CSS
CSS3样式linear-gradient的使用实例
2017/01/16 HTML / CSS
香蕉共和国Banana Republic官网:美国GAP旗下偏贵族风格服饰品牌
2016/11/21 全球购物
大码女装:Ulla Popken
2019/08/06 全球购物
交通事故检查书范文
2014/01/30 职场文书
会计专业大学生职业生涯规划书
2014/02/11 职场文书
捐资助学倡议书
2014/04/15 职场文书
家长会学生演讲稿
2014/04/26 职场文书
2014年底工作总结
2014/12/15 职场文书
医院科室评语
2015/01/04 职场文书
预备党员群众意见
2015/06/01 职场文书
2016党员干部政治学习心得体会
2016/01/23 职场文书
在HTML5 localStorage中存储对象的示例代码
2021/04/21 Javascript
Python jiaba库的使用详解
2021/11/23 Python