2016-06-21 4 views
1

あなたの多くにとって多分これは愚かな質問ですが、今日私は間違いなく遭遇しました:エキスパート向け:PHPを使用しているオブジェクトで高速条件付き(cond?true:false)の代わりになるものは何ですか?

高速condを使用する方法はありますか? true:コードを再作成する必要もなく、if/else文を使用することなく、オブジェクト呼び出しでfalse?どのようにこの?:

$users = DB::table('users') 
        ->where('votes', '>', 100) 
        (condition ? '->orWhere('name', 'John')' : '') 
        ->get(); 

のようなものを呼び出すために、あなたがそれを手に入れた

...私に説明してみましょうか?オブジェクトの呼び出し内...

+0

私はあなたが連鎖呼び出しのためにそれを行うことができることを真剣に疑っています。 ' - > get()'の前に '$ users'インスタンスのif/elseを使う必要があります。 –

答えて

4

ternary operatorと呼ばれています。そして、いいえ、あなたが望むことをすることはできません。 if文を使用する必要があります。

$query = DB::table('users') 
       ->where('votes', '>', 100); 
if (condition) { 
    $query->orWhere('name', 'John'); 
} 
$users = $query->get(); 
関連する問題