$variable:[]的作用是什么?


What does $variable ?: [] do?

$variable ?: []

它是做什么的?这是一个三元运算符,但看起来有点不同,我不知道[]是什么意思。也许它是5.4的速记数组,并创建一个空数组?

简写为:

if ($variable) {
    // nothing
} else {
    $variable = array();
}

[]是PHP 5.4对array()的简写

意思是:

如果$variable有值,则使用该值,否则使用空数组。

[]语法是PHP 5.4对空数组的速记语法。
PHP 5.3及更早版本将其写为array()

换句话说,是的,你在问题中对它的作用的猜测非常正确。