私は最近、いくつかのコードをレビューしていましたが、ぼんやりとした感覚で、次のような構造を残していることに気付きました。
$guid = empty($subscription->guid) ? : $subscription->guid;
さて、これはそれがはずのものをやっていなかったとされ、間違ったが、そのプロパティは常に設定されましたので、それは罰金を働いていた、と理由の5.3以来、何の構文エラーがない、次の変更は:
PHP 5.3以降、三項演算子の中間部分を省略することが可能です。式expr1?:expr1がTRUEと評価された場合、expr3はexpr1を返し、そうでない場合はexpr3を返します。
私はこの変更を認識していませんでしたが、今、それを使用する必要があるかどうかに興味があります。これは私が痛んで、あなたが例えばを行うことができますルビーのような言語から欠落していたものですa = b || c
いずれかを取得するb
かc
ではなく、「本当の」ブール。ただし、3項演算子に選択した構文は、私には少し直観に反しているようです。これを製品コードで使用する必要がありますか?偶然見た時は間違いなく自分を投げました。