首页 > PHP资讯 > PHP培训技术 > PHP对比运算符的具体学习

PHP对比运算符的具体学习

PHP培训技术
  运算符是通知编译程序履行特定算术或逻辑操作的符号,一般与操作数一同构成一个表达式,咱们常常看到它会参加数学运算或逻辑运算。PHP也包容了许多的运算符,这篇文章具体解读一下其间很重要的对比运算符。

  对比运算符品种

  好像它们称号所暗示的,答应对两个值进行对比。对比运算符有如下几个:

  1)$a>$b大于:假如$a严厉大于$b,则回来TRUE

  2)$a<$b小于:假如$a严厉小于$b,则回来TRUE

  3)$a>=$b大于等于:假如$a大于等于$b,则回来TRUE

  4)$a<=$b小于等于:假如$a小于等于$b,则回来TRUE

  5)$a<>$b不等于:假如$a不等于$b,则回来TRUE

  6)$a!=$b不等于:假如$a不等于$b,则回来TRUE(同上)

  7)$a==$b等于:假如$a等于$b,则回来TRUE

  8)$a===$b全等于:假如$a等于$b,而且它们的类型也一样,则回来TRUE

  9)$a!==$b 不全等于:假如$a不等于$b,或许它们的类型不一样,则回来TRUE

  其间,咱们要要点区别一下“等于”和“全等于”,$a==$b仅仅对两个变量的值进行了对比运算,而全等于要对运算符两头的表达式一同进行值的对比和数据类型的对比,只要两头的值都持平,运算成果才是“真”。联系“不全等”运算符举例来说,$a=2;var_dump($a!==2);这个表达式回来值是“假”,由于2是等于2的。别的,$a=2;是整型而var_dump($a!==2);里的2也是整型,但运算符是不全等于"!=="所以成果是假,由于2是等于2的。反过来假如是这样$a=2;var_dump($a!=='2');运算成果即是“真”的,由于2不等于'2',后边的'2'是一个字符串的'2',即不全等于不只仅仅仅对比变量值,还要对变量的数据类型进行对比。

  PHP中对比不一样类型的成果

  假如PHP对比运算符对比一个整数和字符串,则字符串会被变换为整数后对比。假如对比两个数字字符串,则会把它们作为整数对比,别的此规矩也适用于switch句子。

  比方:

  var_dump(0=="a");//回来TRUE,"a"被转为0

  var_dump("1"=="01");//回来TRUE,作为整数处理

  string或null和string的对比:将NULL变换为"",进行数字或字符串的对比

  bool或null间的对比:变换为bool,FALSE

  object内置类能够界说自个的对比,不一样类不能对比,一样类则对比特色

  string,resource或number间的对比:将字符串和资本变换成数字,按一般数学对比

  array间的对比:具有较少成员的数组较小,假如运管用1中的键不存在于运管用2中则数组间无法对比,需求逐一值对比(见如下代码)

  array和任何其它类型对比:array老是更大

  object和任何其它类型对比:object老是更大

  数组对比代码:

  functionstandard_array_compare($op1,$op2)

  {

  if(count($op1)

  return-1;//$op1<$op2

  }elseif(count($op1)>count($op2)){

  return1;//$op1>$op2

  }

  foreach($op1as$key=>$val){

  if(!array_key_exists($key,$op2)){

  returnnull;

  }else if($val<$op2[$key]){

  return-1;

  }elseif($val>$op2[$key]){

  return1;

  }

  }

  return0;//$op1==$op2

  }

  对比运算符中的三元运算符:

  表达式(expr1)?(expr2):(expr3)当表达式expr1的值为TRUE时的值为expr2,当表达式expr1的值为FALSE时的值为expr3。

  以上即是对比运算符的要点内容了,文中对这些运算符和对比规矩进行了解析,后边就要经过更多的操练才干把这些内容进行把握和消化。2015年欣才持续为咱们带来PHP的学习协助和更多技能文章,想愈加深化学习PHP,能够参阅《重磅材料!Github上的PHP资本汇总大全》《国外PHP学习网站书本材料汇总》。

本文由欣才IT学院整理发布,未经许可,禁止转载。