我有这样的if语句PHP的if语句执行isset没有分组声明
if ($something !== $array[$key]) {
// do something
}
但我不能100%肯定$array[$key]
存在。 所以我喜欢做这样的事情:
if ($something !== $array[$key] ?? null) {
// do something
}
如果在数组键不存在,或者还是从变量不同的语句应该运行。 当然,我可以做这样的事情:
if ($something !== (isset($array[$key]) ? $array[$key] : null)) {
// do something
}
但我想避免这种情况,因为它使代码的可读性。有没有除了这个其他任何选项:
$compare = $array[$key] ?? null;
if ($something !== $compare) {
// do something
}
为什么'$ something!== $ array [$ key] ??空'不适合你? –
@AlexBlex,如果未设置$ array [$ key],可能是因为“Notice:Undefined offset:”。 – xlordt
'$ something!== $ array [$ key] ?? null'对我不起作用,因为我收到一条通知:'未定义的索引:'。 – SheperdOfFire