Там должен быть лучший способ (PHP, строка) - PullRequest
2 голосов
/ 22 мая 2011

Я хочу отобразить имя пользователя, если оно было указано, в противном случае его адрес электронной почты. Приведенный ниже код функционирует, но мне не нравится, как он занимает так много строк, я смутно припоминаю какой-то способ сделать это с помощью OR? Я имею (по существу):

if ($firstname == "")
{
$name   = $email;
}else{
$name = $firstname;
}
echo $name;

Ответы [ 3 ]

5 голосов
/ 22 мая 2011
echo ($firstname) ? $firstname : $email;
2 голосов
/ 22 мая 2011

Это менее распространенная, но иногда полезная конструкция (как альтернатива синтаксису ?:):

 $name = $firstname   OR   $name = $email;
2 голосов
/ 22 мая 2011

Более короткая версия (PHP 5)

echo ($firstname ? : $email);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...