我经常在写这行代码:

$myParam = isset($params['myParam']) ? $params['myParam'] : 'defaultValue';

通常,对于嵌套数组,这会使行很长。

我可以把它缩短吗?

最佳答案

function getOr(&$var, $default) {
    if (isset($var)) {
        return $var;
    } else {
        return $default;
    }
}

$myParam = getOr($params['myParam'], 'defaultValue');

不过,请务必通过引用传递变量,否则代码将生成E_NOTICE。同样,这里有意使用if/else代替三元运算符,因此如果您使用的是PHP

关于php - "isset construct"是否有快捷方式?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8216594/

10-10 09:01