Rubyでは、変数のデフォルト値を簡単に設定できます
x ||= "default"
上記のステートメントは、x が nil または false の場合、x の値を「デフォルト」に設定します。
PHPに同様のショートカットがありますか、それとも長い形式を使用する必要がありますか:
$x = (isset($x))? $x : "default";
PHPでこれを処理する簡単な方法はありますか?
Rubyでは、変数のデフォルト値を簡単に設定できます
x ||= "default"
上記のステートメントは、x が nil または false の場合、x の値を「デフォルト」に設定します。
PHPに同様のショートカットがありますか、それとも長い形式を使用する必要がありますか:
$x = (isset($x))? $x : "default";
PHPでこれを処理する簡単な方法はありますか?
PHP 5.3 以降では、中間の引数を省略して三項演算子を使用できます。
$x = $x ?: 'default';
isset($x) or $x = 'default';
関数でラップします。
function default($value, $default) {
return $value ? $value : $default;
}
// then use it like:
$x=default($x, 'default');
一部の人々はそれを好まないかもしれませんが、クレイジーな関数呼び出しを行っている場合でも、コードをきれいに保つことができます。
あなたの長い形式はすでにphpのショートカットになっていると思います...読みにくいので、私はそれを使用しません
注意点: symfony フレームワークでは、ほとんどの "get" メソッドには、デフォルト値を定義するための 2 番目のパラメーターがあります...