Правильный ответ, как это часто бывает, «это зависит».В этом случае
if ($var==TRUE) $foo = "bar";
else $foo = "";
очень ясно.Но каков ваш контекст?
В общем, третичный оператор, ваш третий вариант, должен использоваться с особой осторожностью, поскольку его очень легко становится трудно читать.
Но подумайте с точки зрениячто вы хотите, чтобы ваш код имел в виду, больше, чем о том, что он делает.Вы хотите установить для $ foo «нормальное» значение, а затем переопределить его?Или вы хотите установить что-то, что зависит от того, что такое $ var?
Что-то, что я считаю полезным изменить, это не то, что вы спрашиваете напрямую, но это похоже на это, с
function func() {
...
if ($condition) {
do plenty
of things
}
else {
do plenty
of things
}
}
То, что я обычно хотел бы изменить на:
function func() {
...
if ($condition) {
do plenty
of things
return;
}
do plenty
of things
}
Это обычно имеет смысл .
Просто спросите себя: «Если кто-то, кто не сделал»ничего не знаю о моем коде, прочитайте его, имеет ли это смысл для него? Или для нее? "