Bei einem erfahrenen PHP-Programmierer bilden sich nach einiger Zeit bestimmte Vorgehensweisen aus, durch die er schneller zum Ziel (dem fertigen Programm) kommt. Das spielt sich häufig in Strukturen oder Funktionssammlungen ab, aber eine ganz besondere Art der Effizienzsteigerung solcher Programmierer lässt denjenigen, der den Code später dann pflegen soll, stutzen: Die Benutzung des Trinitäts-Operators (Ternary Operator). Vielleicht ist Ihnen dieses Konstrukt ja schon einmal begegnet:
$wochenende = ($tag > 5) ? ‚ja‘ : ’nein‘;
Das sieht ziemlich anders aus als Standard-PHP-Code und kann im ersten Moment durchaus verwirren. Dabei handelt es sich um eine normale if / else – Abfrage, die man auch so schreiben kann:
if ($tag > 5) {
$wochenende=’ja‘;
} else {
$wochenende=’nein‘;
}
Der Trinitätsoperator funktioniert anders als die if / else – Abfrage nur, wenn ein Wert zurückgegeben wird. Etwas wie
$wochenende = ($tag > 5) ? echo ‚ja‘ : echo ’nein‘;
funktioniert nicht. Benutzt man aber statt echo print für die Ausgabe, klappt es wieder, denn print ist eine echte PHP-Funktion und gibt TRUE oder FALSE zurück. Wegen dieser komplizierten Handhabung ist der Trinitäts-Operator wohl nicht Anfänger’s Liebling.