PHP strncasecmp字符串比较的小技巧


Posted in PHP onJanuary 04, 2011

只是这样就需要转换两次。大多时候,我们是针对字符集转换的时候才会这样,比如判断参数传进来是否utf-8,这5个字符的写法,可就多了,比如UTF-8,Utf-8,utf-8等,那我们怎么办呢?strtolower?strupper?不需要啦。。
strncasecmp($a,$b,$length)就可以了。。
如果返回是0则相等,那我们怎么判断呢?
strncasecmp($str,'utf-8',5) == 0那么,传入的参数就是utf8的,是否很方便呢?
只是这些函数我们平时不太用得到,我看到这个函数的用法却是在 yii framework,他在处理事件的时候,判断前两个字符是否为 on 的时候,就是这样判断的。我也因此学到了一招。

strncasecmp Definition and Usage
定义和用法
The strncasecmp() function compares two strings.
strncasecmp()函数的作用是:比较字符串的前n个字符(大小写不敏感)。

This function returns:
这个函数将返回下列值:

0 - if the two strings are equal
0 ? 如果字符串相等
<0 - if string1 is less than string2
<0 ? 如果string1小于string2
>0 - if string1 is greater than string2
>0 ? 如果string1大于string2
Syntax
语法
strncasecmp(string1,string2,length)

Parameter参数 Description描述
string1 Required. Specifies the first string to compare必要参数。指定参与比较的第一个字符串对象
string2 Required. Specifies the second string to compare必要参数。指定参与比较的第二个字符串对象
length Required. Specify the number of characters from each string to be used in the comparison必要参数。指定每个字符串中参数比较的字符数量
Tips and Notes
注意点
Note: The strncasecmp() is binary safe and case-insensitive.
注意:strncasecmp()函数是二进制精确的,并且它不区分字母大小写。

Example
案例

<?php 
echo strncasecmp("Hello world!","hello earth!",6); 
?>

The output of the code above will be:
上述代码将输出下面的结果:
0
PHP 相关文章推荐
第1次亲密接触PHP5(1)
Oct 09 PHP
PHP新手上路(七)
Oct 09 PHP
How do I change MySQL timezone?
Mar 26 PHP
PHP中将网页导出为Word文档的代码
May 25 PHP
基于PHP 面向对象之成员方法详解
May 04 PHP
php实现可用于mysql,mssql,pg数据库操作类
Dec 13 PHP
windows7下php开发环境搭建图文教程
Jan 06 PHP
必须收藏的php实用代码片段
Feb 02 PHP
用HTML/JS/PHP方式实现页面延时跳转的简单实例
Jul 18 PHP
phpinfo()中Loaded Configuration File(none)的解决方法
Jan 16 PHP
php ActiveMQ的安装与使用方法图文教程
Feb 23 PHP
php如何获取Http请求
Apr 30 PHP
php simplexmlElement操作xml的命名空间实现代码
Jan 04 #PHP
array_multisort实现PHP多维数组排序示例讲解
Jan 04 #PHP
php关于array_multisort多维数组排序的使用说明
Jan 04 #PHP
PHP 设置MySQL连接字符集的方法
Jan 02 #PHP
php array_unique之后json_encode需要注意
Jan 02 #PHP
从php核心代码分析require和include的区别
Jan 02 #PHP
深入理解PHP之require/include顺序 推荐
Jan 02 #PHP
You might like
学习discuz php 引入文件的方法DISCUZ_ROOT
2009/06/21 PHP
php简单提示框alert封装函数
2010/08/08 PHP
php中比较简单的导入phpmyadmin生成的sql文件的方法
2011/06/28 PHP
浅析Mysql 数据回滚错误的解决方法
2013/08/05 PHP
php中 $$str 中 &quot;$$&quot; 的详解
2015/07/06 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
2016/04/02 PHP
php实现微信公众平台发红包功能
2018/06/14 PHP
对google个性主页的拖拽效果的js的完整注释[转]
2007/04/10 Javascript
js 返回时间戳所对应的具体时间
2010/07/20 Javascript
js定时器的使用(实例讲解)
2014/01/06 Javascript
wangEditor编辑器失去焦点后仍然可以在原位置插入图片分析
2015/05/06 Javascript
介绍JavaScript的一个微型模版
2015/06/24 Javascript
基于jquery实现放大镜效果
2015/08/17 Javascript
jquery读写cookie操作实例分析
2015/12/24 Javascript
如何通过非数字与字符的方式实现PHP WebShell详解
2017/07/02 Javascript
解决layer弹层遮罩挡住窗体的问题
2018/08/17 Javascript
vue实现数字动态翻牌的效果(开箱即用)
2019/12/08 Javascript
vue 在单页面应用里使用二级套嵌路由
2020/12/19 Vue.js
Python计算回文数的方法
2015/03/11 Python
python使用正则表达式分析网页中的图片并进行替换的方法
2015/03/26 Python
CentOS下使用yum安装python-pip失败的完美解决方法
2017/08/16 Python
Python实现识别手写数字 简易图片存储管理系统
2018/01/29 Python
python可视化实现代码
2019/01/15 Python
如何基于python3和Vue实现AES数据加密
2020/03/27 Python
python opencv实现图像配准与比较
2021/02/09 Python
英国航空官网:British Airways
2016/09/11 全球购物
菲律宾最大的网上花店和礼品店:PhilFlower.com
2018/02/09 全球购物
硕士研究生个人求职信
2013/12/04 职场文书
电焊工工作岗位职责
2014/02/06 职场文书
教师自我剖析材料(群众路线)
2014/09/29 职场文书
军人离婚协议书样本
2014/10/21 职场文书
综治目标管理责任书
2015/05/11 职场文书
无房证明样本
2015/06/17 职场文书
2019通用版劳动合同范本!
2019/07/11 职场文书
win10以太网连接不上怎么办?Win10连接以太网详细教程
2022/04/08 数码科技
Python实现Matplotlib,Seaborn动态数据图
2022/05/06 Python