带有默认值的PHP赋值

dre*_*ves 10 php default-value variable-assignment

有什么更好的方法来执行以下操作,不会调用f()两次?

$x = f() ? f() : 'default';
Run Code Online (Sandbox Code Playgroud)

Sta*_*asM 27

在PHP 5.3中,您还可以:

  $a = f() ?: 'default';
Run Code Online (Sandbox Code Playgroud)

请参阅?:operator上的手册.


dre*_*ves 8

这似乎工作正常:

$x = f() or $x = 'default';
Run Code Online (Sandbox Code Playgroud)