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 相关文章推荐
Win2000+Apache+MySql+PHP4+PERL安装使用小结
Oct 09 PHP
基于mysql的bbs设计(二)
Oct 09 PHP
给初学PHP的5个入手程序
Nov 23 PHP
一些 PHP 管理系统程序中的后门
Aug 05 PHP
PHP缓存技术的使用说明
Aug 06 PHP
PHP中的生成XML文件的4种方法分享
Oct 06 PHP
php 判断服务器操作系统的类型
Feb 17 PHP
php 判断网页是否是utf8编码的方法
Jun 06 PHP
使用PHP和JavaScript判断请求是否来自微信内浏览器
Aug 18 PHP
WordPress中登陆后关闭登陆页面及设置用户不可见栏目
Dec 31 PHP
php+jQuery+Ajax简单实现页面异步刷新
Aug 08 PHP
php实现记事本案例
Oct 20 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
php简单开启gzip压缩方法(zlib.output_compression)
2013/04/13 PHP
PHP定时更新程序设计思路分享
2014/06/10 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
2018/02/11 PHP
PHP pthreads v3使用中的一些坑和注意点分析
2020/02/21 PHP
JavaScript中的闭包介绍
2015/03/15 Javascript
AngularJS基础教程之简单介绍
2015/09/27 Javascript
浅谈使用MVC模式进行JavaScript程序开发
2015/11/10 Javascript
jQuery实现日期联动效果实例
2016/07/26 Javascript
jQuery设置聚焦并使光标位置在文字最后的实现方法
2016/08/02 Javascript
js注入 黑客之路必备!
2016/09/14 Javascript
vue.js中Vue-router 2.0基础实践教程
2017/05/08 Javascript
Angular2+如何去除url中的#号详解
2017/12/20 Javascript
详解vue-router导航守卫
2019/01/19 Javascript
微信小程序页面间传递数组对象方法解析
2019/11/06 Javascript
vue 百度地图(vue-baidu-map)绘制方向箭头折线实例代码详解
2020/04/28 Javascript
小程序点餐界面添加购物车左右摆动动画
2020/09/23 Javascript
Python3使用requests包抓取并保存网页源码的方法
2016/03/15 Python
python字典DICT类型合并详解
2017/08/17 Python
解决django中ModelForm多表单组合的问题
2019/07/18 Python
python实现手势识别的示例(入门)
2020/04/15 Python
python3.7中安装paddleocr及paddlepaddle包的多种方法
2020/11/27 Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
2020/12/14 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
2021/02/27 Python
CSS3 Calc实现滚动条出现页面不跳动问题
2017/09/14 HTML / CSS
实习期自我鉴定
2013/10/11 职场文书
幼儿园师德师风学习材料
2014/05/29 职场文书
节能标语大全
2014/06/21 职场文书
股指期货心得体会
2014/09/13 职场文书
秋季运动会广播稿(30篇)
2014/09/13 职场文书
四查四看整改措施
2014/09/19 职场文书
健康状况证明模板
2014/10/23 职场文书
《所见》教学反思
2016/02/23 职场文书
七年级语文教学反思
2016/03/03 职场文书
解除租赁合同协议书
2016/03/21 职场文书
奖学金发言稿(范文)
2019/08/21 职场文书
Golang 结构体数据集合
2022/04/22 Golang