金沙贵宾会官网|金沙贵宾会登录-官网

【A】金沙贵宾会官网超高的返奖率为娱乐者提供资金保障,所以金沙贵宾会登录官网更加的方便了你的娱乐,申请88元彩金,因为在当中不仅仅只有游戏。

php中字符串比较函数使用方法,PHP字符串比较函

日期:2019-09-26编辑作者:网络安全

正如字符串是别的编程语言的字符串处理效能中至关心尊崇要的特色之一。在PHP中除去能够行使相比运算符号(==、<或>)加以比较外,还提供了一雨后玉兰片的可比函数,使PHP能够扩充更复杂的字符串相比。如strcmp()、strcasecmp()和strnatcmp()等函数。

比较字符串是其余编制程序语言的字符串管理效果中珍视的性格之一。在PHP中除了能够利用比较运算符号(==、<或>)加以相比较外,还提供了一文山会海的相比函数,使PHP能够开展更眼花缭乱的字符串比较。如strcmp()、strcasecmp()和strnatcmp()等函数。

以分别轻重缓急写的章程相比多少个字符串
Strcmp()函数对八个字符串实行二进制安全的可比,并分别轻重缓急写。其格局为:
int strcmp ( string str1 , string str2 )
基于相比较的结果将回到如下的三个可能值。
•若是str1 和str2 相等则再次回到0 。
•如果str1小于str2则返回-1 。
•如果str1大于str2则返回1 。
网站日常供给待注册的顾客输入并肯定他采用的密码,收缩由于键入错误而生成不科学密码的恐怕。因为密码经常是分别轻重缓急写的,所以strcmp()对于比较那五个密码是至极适用的:

1.按字节顺序举办字符串相比较

1.按字节顺序进行字符串比较

复制代码 代码如下:

要按字节顺序实行字符串的比较,能够采取strcmp()和strcasecmp()七个函数,在那之中等高校函授数strcasecmp()可以忽略字符串中字母的大小写举办相比较。那五个函数的原型如下所示:

要按字节顺序举办字符串的可比,能够选择strcmp()和strcasecmp()多少个函数,个中等学校函授数strcasecmp()能够忽略字符串中字母的大小写进行相比较。那多少个函数的原型如下所示:

<?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)
三种格局目的一致,都是相比七个字符串,但要记住,它们重临的值却分裂。

in strcmp(string str1,string str2)               //区分字符串中字母大小写地比较
int strcasecmp(string str1,string str2)                //忽略字符串中字母大小写地比较

in strcmp(string str1,string str2)               //区分字符串中字母大小写地相比较
int strcasecmp(string str1,string str2)                //忽略字符串中字母大小写地比较

实例代码:

那七个函数的用法相似,都亟需传入举办相比较的多少个字符串参数。能够对输入的str1和str2两字符串,依照字节的ASCII值从七个字符串的首字节开首相比较,要是相等则进入下一个字节的比较,直至甘休相比。重临以下八个值之一:
★如果str1等于str2则返回0。
★如果str1大于str2则返回1。
★如果str1小于str2则返回-1。

那多少个函数的用法相似,都亟待传入举办相比较的八个字符串参数。能够对输入的str1和str2两字符串,根据字节的ASCII值从四个字符串的首字节开端比较,假若相等则步入下三个字节的可比,直至甘休比较。再次回到以下八个值之一:
★如果str1等于str2则返回0。
★如果str1大于str2则返回1。
★如果str1小于str2则返回-1。
在底下的主次中经过相比后的再次回到值决断五个比较字符串大小。使用strcmp()函数区分字符串中字母大小写的可比,使用strcasecmp()函数忽略字符串中字母大小写的可比。当然未有实际意义。代码如下所示:

复制代码 代码如下:

在上边包车型客车前后相继中经过相比较后的再次来到值判别五个相比字符串大小。使用strcmp()函数区分字符串中字母大小写的可比,使用strcasecmp()函数忽略字符串中字母大小写的比较。当然未有实际意义。代码如下所示:

复制代码 代码如下:

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

 代码如下

<?php
$username = "Admin";
$password = "lampBrother";
 
//不区分轻重缓急写的相比,若是多少个字符串相等重返0
if(strcasecmp($userName,"admin")== 0){
echo "顾客名存在";
}
//将多个比较的字符串相应的函数转成全大写或全小写后,也足以兑现不区分轻重缓急写的相比
if(strcasecmp(strtolower($userName),strtolower("admin")) == 0){
echo "客商名存在";
}
 
//区分字符串中字母的大小写相比
switch(strcmp($password,"lampbrother")){
case 0:
echo "四个字符串相等<br>"; break;
case 1:
echo "第二个字符串大于第一个字符串<br>"; break;
case -1:
echo "第二个字符串小于第二个字符串<br>"; break;
}
?>

上边这几个是相比好的strcmp的事例代码:
PHP strcmp依据IP地址调节访谈的代码 

<?php
$username = "Admin";
$password = "lampBrother";
 
//不区分轻重缓急写的可比,倘诺八个字符串相等再次来到0
if(strcasecmp($userName,"admin")== 0){
echo "顾客名存在";
}
//将多个比较的字符串相应的函数转成全大写或全小写后,也得以兑现不区分轻重缓急写的可比
if(strcasecmp(strtolower($userName),strtolower("admin")) == 0){
echo "顾客名存在";
}
 
//区分字符串中字母的高低写相比
switch(strcmp($password,"lampbrother")){
case 0:
echo "八个字符串相等<br>"; break;
case 1:
echo "第三个字符串大于第二个字符串<br>"; break;
case -1:
echo "第叁个字符串小于第贰个字符串<br>"; break;
}
?>

2.按自然排序举行字符串相比较

简易的补充:
此处的str1和str2相比 实际上是str1和str2 的ASCII值的可比
比如:
strcmp("A","a"); 重返值为 -1
// a的ASCII值是97 A的ASCII值是65
透过例子还足以看出 当用strcmp()比较字符串时,是分别轻重缓急写的

2.按自然排序进行字符串相比

而外能够遵照字节位的字典顺序进行相比外,PHP还提供了服从“自然排序”法对字符串进行相比。所谓自然排序,是指根据大家的平时生活中的思维习贯举办排序,将在字符串中的数字有的依照数字大小举办比较。比方依据字节相比较时“4”大于“33”,因为“4”大于“33”中的第多个字符,而遵照自然排序法规“33”大于“4”。使用strnatcmp()函数按自然排序法相比七个字符串,该函数对大小写敏感,其应用格式与strcmp()函数相似。

紧接着再看strcmp的永不忘记明白:

除外可以遵从字节位的字典顺序举行比较外,PHP还提供了遵照“自然排序”法对字符串进行相比。所谓自然排序,是指遵照大家的日常生活中的思维习贯进行排序,将在字符串中的数字有的依据数字大小实行相比较。举个例子遵照字节相比时“4”大于“33”,因为“4”大于“33”中的第二个字符,而遵照自然排序法规“33”大于“4”。使用strnatcmp()函数按自然排序法相比多少个字符串,该函数对大小写敏感,其选用格式与strcmp()函数相似。

在底下的例证中,对一个数组中满含数字的文件名,使用冒泡排序法通过二种比较艺术排序。代码如下所示:

strcmp("abc","abc"); 此时 字符串相等 再次来到值为 0
我们改一下 strcmp("aBc","abc");此时就不对等了 再次回到值为-1
鉴于strcmp是让aBc和abc逐条比较的,七个字符串的第七个和率先个比较,第

在上边的事例中,对三个数组中饱含数字的公文名,使用冒泡排序法通过三种相比艺术排序。代码如下所示:

复制代码 代码如下:

二个和第一个相比较……当每贰回相比的ASCII值相等时,技艺一连相比下一对

 代码如下

<?php
//定义四个富含数字值的数组
$files = array("file11.txt","file22.txt","file1.txt","file2.txt");
 
function mySort($arr,$select = false){
    for($i=0;$i<count($arr);$i++){
        for($j;$j<count($arr)-1;$j++){
        //假使第一个参数为ture则应用strcmp()函数极大小
            if($select){
            //前后多少个值相比结实大于0则沟通地方
                if(strcmp($arr[$j],$arr[j+1])>0){
                    $tmp = $arr[$j];
                    $arr[$j] = $arr[$j+1];
                    $arr[$j+1] = $tmp;
                }
           //假诺第叁个参数为false则利用strnatcmp()函数一点都不小小
           }else{
            //假如相比较结实大于0沟通地点
                if(strnatcmp($arr[$j],$arr[$j+1])>0){
                    $tmp = $arr[$j];
                    $arr[$j] = $arr[$j+1];
                    $arr[$j+1]; = $tmp;
                }
            }
        }
    }
return $arr; //排序后的数组
}
print_r(mySort($files,true));         //采取按字典顺序排序: file1.txt file11.txt file2.txt file22.txt
print_r(mySort($files,false));          //采用按自然顺序排序:file1.txt file2.txt file11.txt file22.txt
?>

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

<?php
//定义贰个暗含数字值的数组
$files = array("file11.txt","file22.txt","file1.txt","file2.txt");
 
function mySort($arr,$select = false){
for($i=0;$i<count($arr);$i++){
for($j;$j<count($arr)-1;$j++){
//假诺第一个参数为ture则选择strcmp()函数比一点都不小小
if($select){
//前后多个值比较结实大于0则调交换一下地方置
if(strcmp($arr[$j],$arr[j+1])>0){
$tmp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1] = $tmp;
}
//假设第三个参数为false则采取strnatcmp()函数相当的大小
}else{
//要是相比结实大于0交流地点
if(strnatcmp($arr[$j],$arr[$j+1])>0){
$tmp = $arr[$j];
$arr[$j] = $arr[$j+1];
$arr[$j+1]; = $tmp;
}
}
}
}
return $arr; //排序后的数组
}
print_r(mySort($files,true));         //选取按字典顺序排序: file1.txt file11.txt file2.txt file22.txt
print_r(mySort($files,false));          //选用按自然顺序排序:file1.txt file2.txt file11.txt file22.txt
?>

在PHP中也提供了那个函数忽略大小写的版本的函数strnatcasecmp()用法与strnatcmp()函数同样。

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

在PHP中也提供了这几个函数忽略大小写的版本的函数strnatcasecmp()用法与strnatcmp()函数同样。

您大概感兴趣的篇章:

  • PHP中strcmp()和strcasecmp()函数字符串比较用法深入分析
  • 依据PHP字符串的可比函数strcmp()与strcasecmp()的行使详解
  • PHP获取访谈页面HTTP状态码的兑今世码
  • PHP之将POST数据转载为字符串的落到实处代码
  • PHP 接入微信扫码支付总括(计算篇)
  • PHP 微信扫码支付源代码(推荐)
  • php cookie 详解使用实例
  • PHP使用curl制作简单百度找出
  • php 幸免表单重复提交二种达成格局
  • PHP strcmp()和strcasecmp()的差距实例

您也许感兴趣的篇章:

  • PHP中strnatcmp()函数“自然排序算法”进行字符串相比较用法剖判(比较strcmp函数)
  • PHP中strcmp()和strcasecmp()函数字符串相比较用法分析
  • PHP字符串比较函数strcmp()和strcasecmp()使用总括
  • 听他们说PHP字符串的相比函数strcmp()与strcasecmp()的使用详解
  • php比较四个字符串长度的办法
  • php相比较一般字符串的主意
  • php完成相比较四个字符串日期大小的措施
  • php常用字符串比较函数实例汇总
  • PHP学习之字符串比较和研究
  • PHP中strncmp()函数相比较四个字符串前2个字符是还是不是等于的主意

除外上边运用函数相比大家还足以运用“===”来判定,至于它和“==”的分裂

诚如能用 !=, == 相比八个对象是或不是等于,只所以说是多少个指标,是因为她俩不必然全体为字符串,也能为整型等等。
  如果用 !==,===(能看出多了多个等号)相比较的话,八个指标的品类要严格相等本领回去true;不然用==,!=则会将字符串自动转变到相应的品种,以便进行比较.

 代码如下

22 == "22"; // 返回 true
22 === "22"; // 返回false  

 

正因为如此,所以大家的程式时常会发出局地想不到的“意外”:

 代码如下

0 == "我爱你"; // 返回true
1 == "1 我爱你";// 返回true

还恐怕有一种相比较艺术

var_dump("1" == "1e0");
var_dump("1" == "0x1");
var_dump("20" == "2e1");
var_dump("10" == "  0x0a");

等等;
对, 大概你会说在PHP手册的附录中有局地有关这几个难点的总括. 难题是,那只是知其然, 那么所以然是何等呢?
后天就有三个网络基友问了本身八个标题:

 代码如下

var_dump("1" == "1e0");  //true 
var_dump("1" == "1ef"); //false 

那三个的结果为何不等同啊. 
也正是说, 下边包车型客车等式a要确立, 那么独一的表达便是PHP讲他们双发都用作int来相比.
但是, var_dump(“1e0″),或者var_dump(“1″),都是string啊.

因为PHP不区分类型, 所以她运用三个政策, 当你的变量看起来是多少个数字的时候, 那么她就感到那些变量是一个数字.
简易来讲, numeric_string正是意味数字的字符串:
也等于说,如下的可比结实都是真:

 代码如下

var_dump("1" == "1e0"); 
var_dump("1" == "0x1"); 
var_dump("20" == "2e1"); 
var_dump("10" == "  0x0a"); 

呵呵, 读者们遇上过那个主题素材的困扰么?

 代码如下

if("608E-4234" == "272E-3063"){ 
    echo "oh shit! they're equal!\n"; 
}else{ 
    echo "obviously, isn't?\n"; 

PHP开发Tips:假设想要判别三个字符串是或不是等于,使用 === 并非 ==。

本文由金沙贵宾会官网发布于网络安全,转载请注明出处:php中字符串比较函数使用方法,PHP字符串比较函

关键词:

PHP页面缓存实现的方法总结,PHP小偷程序的设计

 代码如下         $durl=parse_url($this-url);          $durl=explode("          foreach($durl as $surl)         ...

详细>>

php数组中删除元素之重新索引,php数组中删除元

如果要在某个数组中删除一个元素,可以直接用的unset,但今天看到的东西却让我大吃一惊 array_search()比较实用 arra...

详细>>

模拟用户自动在qq空间发表文章,php模拟用户自动

    $_POST['content']---文章内容,不得空 $title=empty($_POST['title'])?die('标题不得空'):$_POST['title'];//文章标题 $content=empty($_P...

详细>>

中header函数的用法详解,php文件下载实现方法

header() 函数向客户端发送原始的 HTTP 报头。 定义和用法 header() 函数向客户端发送原始的 http 报头。 第一行代码是强...

详细>>