2016-06-21 4 views
1

Für viele von euch vielleicht ist das eine dumme Frage, aber heute bin ich mit einem Zweifel gestoßen:Für Experten: Was ist der Ersatz für schnelle bedingte (cond? True: false) in Objekten mit PHP?

Gibt es eine Möglichkeit, Fast Cond zu verwenden? true: false bei Objektaufrufen ohne die Notwendigkeit, Code neu zu erstellen oder die Anweisung if/else zu verwenden? Lassen Sie mich erklären ...

Wie so etwas nennen ?:

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

Haben Sie es bekommen? Innerhalb des Objekts rufen Sie ...

+0

Ich bezweifle ernsthaft, dass Sie das für verkettete Anrufe tun können. Sie müssen if/else für die Instanz '$ users' vor dem' -> get() 'verwenden. –

Antwort

4

Es heißt ternary operator. Und nein, du kannst nicht tun, was du willst. Sie müssen eine regelmäßige if-Anweisung verwenden.

$query = DB::table('users') 
       ->where('votes', '>', 100); 
if (condition) { 
    $query->orWhere('name', 'John'); 
} 
$users = $query->get(); 
Verwandte Themen