header-xh-01 header-xh-02 header-xh-03 header-xh-04 header-xh-05 header-xh-06 header-xh-07 header-xh-08 header-xh-09 header-xh-10 header-xh-11 header-xh-12 header-xh-13 header-xh-14
Lembach's nichtkommerzielle Website rund um CMSimple_XH
Templates, Plugins, Tools, Programme
und Tips und Tricks die mir wichtig sind
Sie sind hier: Startseite > Tipps und Tricks zusammengetragen > Kurzform der PHP - Anweisung If / else

Kurzform der PHP - Anweisung If / else

Linkliste

http://php.lernenhoch2.de/lernen/php-anfaenger/bedingungen/ternaerer-operator-kurzform-fur-if-then-else/

https://mizine.de/html/php-if-else-kurzschreibweise-string-concatenation/

http://www.kubuzibu.de/ternaerer-operator-if-else-in-kurzform/

http://foobarblog.net/blog/alternative-kurz-schreibweisen-fuer-if-anweisungen-in-php-18/

Kurze Darstellung

Die Syntax für die Kurzform von if else sieht folgendermaßen aus:

1 <?php
2     (wenn Ausdruck wahr) ? (mache das hier) : (ansonsten das hier)
3 ?>

Das könnte dann so verkürzt werden:

<?php echo ($a != $b) ? 'Werte sind ungleich' : 'Werte sind gleich' ; ?>

Mit dem ternären Operator lassen sich auch if, elseIf, else Abfragen verkürzen. Das ist der Lesbarkeit des Codes nicht förderlich, aber innerhalb des HTML-Codes eines Templates ist es durchaus sinnvoll die Verkürzung so zu maximieren.

<?php
    $auswahl = 1;
    echo $geschlecht = ($auswahl == 1) ? "männlich" : (($auswahl == 2) ? "weiblich" : "unbekannt");
?>

Ein reiner Entscheidungsbaum mit drei Zweigen kann dann so aussehen:

<?php echo ($a == '') ? 'Die Variable ist leer.' : (($a == 'true') ? 'Die Variable hat den Wert true.' :  'Der Variablenwert ist nicht true.') ; ?>

In ein HTML-Template eingebettet, mit einer ganzen Reihe von HTML-Code-Zeile Ausgaben, wenn die Bedingung wahr ist, sieht dann z. B. so aus:

<?php if (isset($MainColor2019)):?>
<style type="text/css">
.secHeader, .secHeader #searchform input { background: <?=$MainColor2019?>; }
#footer { border-top-color: <?=$MainColor2019?>; }
hr, hr.hrdot, #header { border-bottom-color: <?=$MainColor2019?>; }
</style>
<?php endif;?>

Es lassen sich dann natürlich auch verschachtelte Konstrukte bilden.

 


| Seitenanfang |