globe: Kurzform zu if

Beitrag lesen

n'abend,

Hallo.

$sql_exakt = "SELECT * FROM ".
     $_GET['what']=="group" ? "links_groups" : "links"
    ." WHERE ".      $_GET['what']=="group" ? "group" : "id"     ."='".$_GET['which']."'";
echo $sql_exakt;

  
schon mal dran gedacht, dass du diese "trinären Operatoren" (#selfhtml:Henryk würde das übrigens gerne den Dreifaltigkeistsoperator nennen und #selfhtml:goetz findet das toll) in Klammern setzen möchtest?  
  
~~~php
$sql_exakt = "SELECT * FROM ".  
     ( $_GET['what']=="group" ? "links_groups" : "links" )  
    ." WHERE `".  
     ( $_GET['what']=="group" ? "group" : "id" )  
    ."`='".$_GET['which']."'";  
echo $sql_exakt;

Dann würden deine kurz-IFs auch ausgewertet werden, wie man es sich vorstellen würde.

Normalerweise würde ich vollständige if-Abfragen benutzen, doch ich will eine einfache SQL-Abfrage ja nicht auf 20 Zeilen ausweiten, wenn es doch eine auch tut (wobei ich hier zur Übersicht Zeilenumbrüche eingefügt habe, was den Code 6 Zeilen statt einer lang werden lässt).

Für genau solche Fälle gibt es den "trinären Operator".

weiterhin schönen abend...

--
Freundlich wie man war, hat man mir Großbuchstaben geschenkt.
sh:( fo:# ch:# rl:° br:> n4:& ie:{ mo:} va:) de:] zu:} fl:{ ss:? ls:[ js:|