PHP教程

[PHP] ??和?:的区别

本文主要是介绍[PHP] ??和?:的区别,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

??是null合并运算符

<?php
// NULL 合并运算符的例子
$action = $_POST['action'] ?? 'default';

// 以上例子等同于于以下 if/else 语句
if (isset($_POST['action'])) {
    $action = $_POST['action'];
} else {
    $action = 'default';
}

如果针对没有定义的,用上面那种

 

?:是三元运算符

如果针对已经定义了,但是想使用empty判断的情况可以使用 ?:

 

$c = $a ?: 1;var_dump($c);

这样会报 undefined

 

这篇关于[PHP] ??和?:的区别的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!