logo
Dienstag 7. September 2010
Zurück zur Kategorie

IF Abfrage mal anders - shortif

Beitrag geschrieben von King of Darkness am 2007-07-09

Kurzbeschreibung:
In diesem Tutorial möchte ich auf die Möglichkeit eingehen seinen Code mit shortifs etwas schlanker und auch schneller zu machen.
Hallo,

es gibt viele Fälle in denen man abprüfen möchte ob ein Wert gesetzt ist und wenn dem so ist soll der Wert in eine Variable gespeichert werden.
Viele machen das so in der art:
Code:
if(isset($foo['feld']))
{
     $bar = $foo['feld'];
}
else
{
     $bar = 'foobar';
}


es geht aber auch wesendlich kürzer:

Code:
$bar = (isset($foo['feld']) ? $foo['feld'] : 'foobar');


Anstatt von isset() kann aber auch alles mögliche dort stehen, sollange es ein true oder ein false zurück gibt, lässt sich das ganze so kurz und knapp lösen. Das ganze hat ebenfalls einen Performencevorteil, der ist zwar bei einer einzelnen Abfrage sehr gering, hat man aber solch ein Konstrukt in einer Schleife kann sich das durchaus schon bemerkbar machen.

Gruß
King of Darkness

#Edit:
Danke an Bowling-Liga, er hat einen Fehler gefunden :)
Um einen Beitrag zu bewerten musst du eingeloggt sein.
bowling-liga schrieb am 2007-07-09 11:07:46
Bewertung: befriedigend
Da gibt's einen Parse-Error -> Klammer am Ende vergessen ;) $bar = (isset($foo['feld']) ? $foo['feld'] : 'foobar');
Apple schrieb am 2007-12-18 23:27:13
Bewertung: befriedigend
Falsch: $bar = (isset($foo['feld']) ? $foo['feld'] : 'foobar'); Richtig: $bar = (isset($foo['feld'])) ? $foo['feld'] : 'foobar'; //comment by admin ich habe beide versionen getestet und beide führen zum selben ergebnis, verstehe also nicht die kritik