Ответ 1
Как и в случае PHP 5.3, вы можете использовать тернарный оператор, опуская средний аргумент:
$x = $x ?: 'default';
Возможный дубликат:
PHP-эквивалент именования назначения Ruby
В Ruby вы можете легко установить значение по умолчанию для переменной
x ||= "default"
Вышеуказанный оператор устанавливает значение x в значение "по умолчанию", если x равно nil или false
Есть ли аналогичный ярлык в PHP или мне нужно использовать более длинную форму:
$x = (isset($x))? $x : "default";
Есть ли более простые способы справиться с этим в PHP?
Как и в случае PHP 5.3, вы можете использовать тернарный оператор, опуская средний аргумент:
$x = $x ?: 'default';
isset($x) or $x = 'default';
Я переношу его в функцию:
function default($value, $default) {
return $value ? $value : $default;
}
// then use it like:
$x=default($x, 'default');
Некоторым людям это может не нравиться, но он улучшает ваш код, если вы выполняете безумный вызов функции.
Я думаю, что ваша более длинная форма уже является ярлыком для php... и я бы не использовал его, потому что нехорошо читать
Некоторое уведомление: В структуре symfony большинство "get" -Methods имеют второй параметр для определения значения по умолчанию...