логическое — PHP | Должен ли я назначить сокращение, если заявление к переменной

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

оператор не назначен переменной | за работой

!empty($name) ? $name : $name="";

оператор, присвоенный переменной | также работает

$is_name = (!empty($name)) ? $name : $name="" ;

Оба утверждения работают, но какое из них правильное или лучше использовать.

1

Решение

В php 5.3+ вы можете использовать это:

$is_name = $name ?: "";

Примечание. В вашем случае это, вероятно, не самая лучшая идея, поскольку она выдает предупреждение, если не задано $ name. Здесь я все равно рекомендую нормальный способ

$is_name = isset($name) ? $name : "";

Но вопрос в том, зачем иметь неинициализированную переменную?

Если у вас просто есть случай, когда $ name может быть пустой строкой, и вы хотите присвоить ей значение по умолчанию в этом случае, оператор?: Подойдет вам.

$is_name = $name ?: "default value";
2

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

это может быть лучше. вам не нужно больше! Операция и присвоение переменных.

  $is_name = empty($name) ? "" : $name;

или же

  $is_name = isset($name) ? $name : "";  //recomended this one
1

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