"?" in Php (nicht das in der URL)

hubbl

Erfahrenes Mitglied
Hallo ich arbeite gerad ein Tutorial für ein Thumbnail durch und da stehen folgende Zeilen:
PHP:
$width  = (($width) ? $width : ImageSX ($image));
$height = (($height) ? $height : ImageSY ($image));
Kommentar des Autors dazu:
"Ermitteln der jeweiligen Originalwerte für $width & $height, falls diese nicht gesetzt wurden"

Was genau haben die Fragezeichen (und nebenbei bemerkt auch die : )in dieser Zuweisung zu tun?

Hier ist der Link zum kompletten Tutorial:
http://www.softgames.de/developia/viewarticle.php?cid=22390
 
Zuletzt bearbeitet:
PHP:
$width  = (($width) ? $width : ImageSX ($image));
// ist analog zu
if ($width) {
    $width  = $width;
} else {
    $width = ImageSX ($image);
}

Diese kurze If-Else Unterscheidung macht in dem von dir gezeigten Beispiel wenig Sinn, da recht ineffizient, wenn $width bereits gesetzt ist (Doppelte Zuweisung, obwohl evtl. nur ein Mal erforderlich), jedoch ist es eine im Gegensatz zum if-else-Gebilde recht schnelle Angelegenheit, da kein vollständiger Block erwartet wird sondern nur einzelne Werte oder Operationen. Kurz gesagt:

Code:
return[ Bedingung ? tue wenn wahr : tue wenn falsch ]
 
Zurück