7 PHP运算符

X!==y  绝对不等于

PHP7+ 版本新增整除运算符 intdiv(),使用实例:

<?php

var_dump(intdiv(10, 3));

?>

输出:int(3)

 

<?php

$x = array("a" => "red", "b" => "green");

$y = array("c" => "blue", "d" => "yellow");

$z = $x + $y; // $x 和 $y 数组合并

var_dump($z);

var_dump($x == $y);

var_dump($x === $y);

var_dump($x != $y);

var_dump($x <> $y);

var_dump($x !== $y);

?>

结果:

array(4) { ["a"]=> string(3) "red" ["b"]=> string(5) "green" ["c"]=> string(4) "blue" ["d"]=> string(6) "yellow" } 
bool(false) 
bool(false) 
bool(true) 
bool(true) 
bool(true)

 

(expr1) ? (expr2) : (expr3)

expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3

PHP 5.3 起,可以省略三元运算符中间那部分。表达式 expr1 ?: expr3 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3

<?php

$test = '菜鸟教程';

// 普通写法

$username = isset($test) ? $test : 'nobody';

echo $username, PHP_EOL;

 

// PHP 5.3+ 版本写法

$username = $test ?: 'nobody';

echo $username, PHP_EOL;

?>

注意:PHP_EOL 是一个换行符,兼容更大平台。

PHP7+ 版本多了一个 NULL 合并运算符 ??,实例如下:

<?php

// 如果 $_GET['user'] 不存在返回 'nobody',否则返回 $_GET['user'] 的值

$username = $_GET['user'] ?? 'nobody';

// 类似的三元运算符

$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';

?>

PHP7+ 支持组合比较符(combined comparison operator)也称之为太空船操作符,符号为 <=>。组合比较运算符可以轻松实现两个变量的比较,当然不仅限于数值类数据的比较。

语法格式如下:

$c = $a <=> $b;

解析如下:

  • 如果 $a > $b,  $c 的值为 1
  • 如果 $a == $b,  $c 的值为 0

如果 $a < $b,  $c 的值为 -1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值