问题
What's the best, preferred way of writing if shorthand one-liner such as:
expression ? $foo : $bar
Plot twist: I need to echo $foo
or echo $bar
. Any crazy tricks? :)
回答1:
<?=(expression) ? $foo : $bar?>
edit: here's a good read for you on the topic
edit: more to read
回答2:
echo expression ? $foo : $bar;
回答3:
The ternary operator evaluates to the value of the second expression if the first one evaluates to TRUE
, and evaluates to the third expression if the first evaluates to FALSE
. To echo
one value or the other, just pass the ternary expression to the echo
statement.
echo expression ? $foo : $bar;
Read more about the ternary operator in the PHP manual for more details: http://php.net/manual/en/language.operators.comparison.php#language.operators.comparison.ternary
来源:https://stackoverflow.com/questions/20233207/php-if-shorthand-and-echo-in-one-line-possible