Die bedingte Anweisung ist in den meisten Programmiersprachen grundlegend . Die Fähigkeit, den Ablauf eines Programms zu steuern macht die Entscheidungsfindung im Code eine Möglichkeit . Zwar gibt es eine Vielzahl von conditionals in verschiedenen Programmiersprachen sind , ein paar bleiben gleich. Die " if"-Anweisung ist eine dieser Aussagen , und oft seine Kurzform , der " ternären "-Operator , ist so gut. Doch während die ternären gibt Programmierern eine einfache Möglichkeit , um auszudrücken einfachen " if-else "-Anweisungen , muss es nicht immer bieten die gleiche Leistungsfähigkeit, wie in der Programmiersprache PHP evident. PHP Conditionals
PHP conditionals helfen dem Programmierer Steuerung des Durchflusses eines Programms während der Ausführung über den Zustand bestimmter Variablen. Diese bedingten Aussagen in zwei grundlegende Formen: else-if Bedingungen und Schleifen . Wichtig zu diesem Beispiel ist die else-if -Anweisung, die eine bedingte Anweisung nimmt und einen wahren oder falschen Wert daraus . Abhängig von diesem Wert , wird die Anweisung entweder eine Aufgabe auszuführen, oder führen Sie eine weitere Aufgabe. Eine else-if -Anweisung ist wie ein " Entweder-Oder "-Szenario . Entweder ist es eine Aufgabe erfüllt oder es funktioniert nicht.
PHP Ternary Operator
Um Code lesbarer und einfacher zu schreiben, haben einige conditionals Kurzschrift Ausdrücke. Die Kurzschrift für ein " else-if "-Anweisung in PHP, und viele andere Sprachen , ist das " ternären " Betreiber . Der ternäre Operator in PHP verwendet ein Fragezeichen und einen Doppelpunkt als Teil ihrer Syntax . Der ternäre Operator wertet einen wahren oder falschen Begriff und führt eine von zwei Operationen an diesem Ergebnis basiert. Das folgende Beispiel zeigt eine ternäre Ausdruck : Wenn Aussage 1 wahr ist, dann Anweisung 2 führt . Wenn nicht, dann Aussage 3 führt :
( statement_1 ) ? Statement_2 : statement_3 ;
Copy On Write
In vielerlei Hinsicht ist das ternäre Betrieb identisch mit einem einfachen " else-if "-Anweisung. Ein besonderer Unterschied ist, dass die Betreiber der Rückkehr ternären Wert seiner Aussage Auswertung kopieren jedes Mal ist es zu lesen. Die PHP- Sprache außerhalb dieses Ausdrucks verwendet eine Technik, bekannt als " copy- on-write . " Dies bedeutet, dass bei der Vergabe von Variablen -Werte , der PHP-Interpreter nicht kopiert diesen Wert , bis die Variable geändert wird. Die Variable nur einen Verweis auf diesen Wert. Der ternäre Operator jedoch immer kopiert den Wert .
Ternary Leistung
Da PHP nutzt die Copy-on -Write- Technik , Ausdrücke wie einer else - if-Anweisung nicht wiederholt kopieren Werte , wenn sie ausgeführt . Ternär auf der anderen Seite geht . Bei der Durchführung einer kleinen Anzahl von Operationen , wie zum Beispiel einem einzigen Vorgang oder einer kleinen Schleife , der Performance-Unterschied zwischen einem else-if -Anweisung und einer ternären Aussage ist vernachlässigbar. Allerdings, wenn Operationen über große Mengen an Iterationen weiter wachsen, wird der ternäre Operator gezeigt, viel langsamer als ein einfaches else-if -Anweisung ausgeführt .