Альтернатива если (isset), то это еще это

Я должен сделать

if(isset($someval))
$var = $someval
else
$var = $defaultVal

многократно для множества переменных в разное время. Есть ли лучшая альтернатива этому?

что-то вроде

$var = $someval||$defaultVal

Сказав, что я уже знаю про троичного оператора.

0

Решение

Используя троичные операторы (? И :), вы можете сделать что-то вроде этого:

$var = isset($someval) ? $someval : $defaultVal;

Увидеть http://davidwalsh.name/php-ternary-examples для большего количества примеров

1

Другие решения

Использовать троичный оператор:

$var = ($someval) ? $someval : $defaultVal;

isset является избыточным для логической проверки, вам не нужно использовать, если вы хотите более короткие строки.

РЕДАКТИРОВАТЬ: после того, как ОП опубликовал ответы на вопросы, после того как ответы были опубликованы, уже обладает знаниями о троичных операциях, есть даже другие опции учитывать:

  • Назначая себя, если TRUE позволяет опустить первое предложение:

    $var = $someval ?: $defaultVal;

  • Используя чисто логическое выражение:

    $someval && $var = $defaultVal;

1

По вопросам рекламы [email protected]