Hãy cẩn thận với mảng. Chúng ta phải viết một biến kiểm tra sau ?
, bởi vì:
$params = ['param1' => 'value1',
'param2' => 'value2',
'param3' => 'value3',];
$param1 = isset($params['param1'])?:null;
$param2 = !empty($params['param2'])?:null;
$param3 = $params['param3']?:null; // get E_NOTICE, if $params['param3'] eq false
var_dump($param1,$param2,$param3);
true // would like to expect `value1`
true // would like to expect `value2`
param3 // properly, but problem above
Đã cập nhật
Từ RFC. Trong tương lai (trong PHP 7) toán tử Null Coalesce Toán tử sẽ làm điều đó, ví dụ:
$param1 = $params['param1'] ?? null;
// Equivalent to: $param1 = isset($params['param1']) ? $params['param1'] : null;
null
hoặc bất cứ thứ gì. Chỉ cần nói