空推论运算符是件好事吗?

时间:2018-09-28 13:06:57

标签: php null-coalescing-operator

我个人发现自己经常使用它只是为了防止在尝试访问数组时出现“未定义的索引”异常。

此外,我发现自己然后使用它来检查数组是否包含该键。您将在下面找到一个示例:

function getValue($key)
{
    return $this->array[$key] ?? null;
}

// ---

if (!$object->get('key'))
    // Do something when the array doesn't contain that key or the value is empty.

何时可以使用null换行符,何时不可以?可以像这样使用它吗?还是建议您以其他方式来做类似的事情?

1 个答案:

答案 0 :(得分:1)

PHP Manual for the NULL COALESCING OPERATOR列出了一个类似的示例:

from this => 
$('#productconatiner').append('<div><a href="#" class="pimg"></div>');

to this => 
$('#productconatiner').append('<div><a href="#" class="pimg"></a></div>');


function checkitem() {
    $.ajax({
        url: 'api'
    }).done(function (e) {
        $.each(e.records, function (index, value) {

               $('[data-id=' + value.prid + ']').addClass("border border-danger");

        });
    })
}

所以我认为以这种方式使用它是安全的。

  

何时可以使用null换行符?何时不可以?

当您不需要区分NULL值和UNDEFINED值时可以使用它,并且可以将它们视为相同,就好像它们都是NULL一样。