Может использовать следующую функцию, получить значение из массива и установить начальное значение по умолчанию, по умолчанию null
function arrayValue($array, $key, $default = null)
{
return (array_key_exists($key, $array) && $array[$key] !== '') ? $array[$key] : $default;
}
Использование:
$values = [
'name' => 'David',
'age' => 18,
'sex' => '',
];
$name = arrayValue($values, 'name');
$age = arrayValue($values, 'age');
$sex = arrayValue($values, 'sex', 'unknown');
$country = arrayValue($values, 'country', 'unknown');
print_r(
[
$name,
$age,
$sex,
$country,
]
);
Выход:
Array
(
[0] => David
[1] => 18
[2] => unknown
[3] => unknown
)
Как @christophe, так как php7 может сделать что-то вроде
$name = $values['name'] ?? null;
$country = $values['country'] ?? 'unknown';