检查值如果为 null 返回 0 否则返回值

Fur*_*ury -6 php

设置状态为空时返回“0”的最短方法是什么,否则返回值。

$value['status'] = null;

$STATUSES = array(
    0 => 'Pending',
    1 => 'Accepted',
    2 => 'Suspended',
    3 => 'Rejected',
    4 => 'Waiting list',
    5 => 'Terminated',
    9 => 'Application in Progress'
);

$status = $STATUSES[$value['status']];

echo $status;
Run Code Online (Sandbox Code Playgroud)

我可以使用empty()函数来检查值是否为“null”,但我想知道是否有更聪明的方法。

我正在寻找这样的本机函数。

$status = $STATUSES[ valueToZiro( $value['status'] )];

function valueToZiro($val){
    return empty($val)?0:$val;
}
Run Code Online (Sandbox Code Playgroud)

iam*_*eek 5

如果您确定要获取整数,$value['status']则可以将其转换为整数,它会更短:

// in case of null, casting will return 0
$status = $STATUSES[(int)$value['status']];
Run Code Online (Sandbox Code Playgroud)