Mehrere Zweige in PHP beziehen sich auf die multidirektionale bedingte Zweigstruktur; in PHP ist die elseif-Klausel eine typische multidirektionale bedingte Verzweigung. Sie bestimmt, welche Anweisung basierend auf unterschiedlichen Ausdrücken ausgeführt werden soll Werte block; in PHP kann elseif zur Verwendung auch in zwei Schlüsselwörter aufgeteilt werden.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP7.1, Dell G3.
php Was bedeutet Multi-Branche?
PHP-Zweigkontrollanweisung, Zweigstruktur der PHP-Prozesskontrollstruktur
Die Flusskontrolle ist universell und universell für jede Programmiersprache und ein wichtiger Teil des Programms. Man kann sagen, dass in jeder Programmiersprache drei Grundstrukturen unterstützt werden müssen: sequentielle Struktur, Verzweigungsstruktur (Auswahlstruktur oder bedingte Struktur) und Schleifenstruktur. Für sequentielle Strukturen, hauptsächlich Zuweisungsanweisungen und Eingabe-/Ausgabeanweisungen usw., gibt es hier nichts zu sagen. Hier konzentriert sich der Autor auf die Zusammenfassung der Zweigstruktur und der Schleifenstruktur.
Zweigstruktur
Die Zweigstruktur dient dazu, die Reihenfolge der Programmausführung entsprechend den erforderlichen Bedingungen während der Programmausführung zu ändern. Das heißt, wenn eine Bedingung erfüllt ist, wird ein bestimmter Erzählblock ausgeführt, andernfalls wird ein anderer Erzählblock ausgeführt. Die Verwendung von Verzweigungsstrukturen in Programmen kann die folgenden Formen haben:
单一条件分支结构 双向条件分支结构 多向条件分支结构 巢状条件分支结构
Einzelne bedingte Verzweigung
Die if-Struktur ist eine einzelne bedingte Verzweigungsstruktur. Das Grundformat der if-Anweisung besteht darin, einen Ausdruck zu berechnen und zu entscheiden, ob er ausgeführt werden soll Es basiert auf dem Berechnungsergebnis der folgenden Aussagen. Der „Ausdruck“ in Klammern nach „if“ ist die Bedingung für die Ausführung, und das von der Bedingung zurückgegebene Ergebnis kann nur ein boolescher Wert sein. Dies ist normalerweise der Ergebniswert, der durch einen Ausdruck berechnet wird, der aus Vergleichsoperatoren oder logischen Operatoren besteht, oder durch einige Funktionen, die einen booleschen Typ usw. zurückgeben. Wenn ein Wert anderen Typs übergeben wird, wird dieser automatisch in den booleschen Wert TRUE oder FALSE konvertiert. Wenn der Ausdruck TRUE ist, wird der Codeblock ausgeführt, andernfalls wird er nicht ausgeführt.
DEMO
<?php $x = 10; //定义一个整型变量$x,值为10 $y = 20; //定义一个整型变量$y,值为20 if ( $x < $y ) { //$x是小于$y的,所以执行下面语句块 $t = $x ; //先将$x的值放到临时的变量$t中 $x = $y ; //再将变量$y的值赋给变量$a $y = $t ; //再将临时变量$t中的值赋给变量$y } //语句块结束的花括号 var_dump($x > $y ); //两个变量的值已经交换,输出true echo $x." ".$y; ?>
Bidirektionaler bedingter Zweig
Der bidirektionale bedingte Zweig ist wie eine else-Klausel, die auch in eine if-Anweisung eingefügt werden kann, was bedeutet, dass eine Anweisung ausgeführt werden muss, wenn eine bestimmte Bedingung erfüllt ist, und andere Anweisungen werden ausgeführt, wenn die Bedingung nicht erfüllt ist, was genau das ist, was die else-Klausel tut. else erweitert die if-Anweisung und kann die Anweisung ausführen, wenn der Ausdruck in der if-Anweisung FALSE ergibt. Es ist erwähnenswert, dass die else-Anweisung eine Klausel der if-Anweisung ist und zusammen mit if verwendet werden muss und nicht alleine existieren kann.
DEMO
<?php $x = 30; $y = 20; if( $x > $y ) { echo "变量$x 大于变量 $y <br>"; //判断的条件成立,此句会执行 } else { echo "变量$x 小于变量 $y <br>"; //判断的条件不成立,此句会被执行 } echo "变量$x和变量$y比较完毕 "; ?>
Multidirektionale bedingte Verzweigung
Die elseif-Klausel ist eine typische multidirektionale bedingte Verzweigung. Die elseif-Klausel bestimmt, welcher Anweisungsblock basierend auf verschiedenen Ausdruckswerten ausgeführt werden soll. In PHP kann elseif zur Verwendung auch in zwei Schlüsselwörter else if aufgeteilt werden. Die Ausführungsreihenfolge lautet: Wenn Ausdruck l WAHR ist, wird die Anweisung für Codeblock 1 ausgeführt. Wenn festgestellt wird, dass Ausdruck 2 WAHR ist, wird die Anweisung für Codeblock 2 ausgeführt, und so weiter , dann wird die Anweisung des Codeblocks n ausgeführt. Wenn die Bedingungen des Ausdrucks nicht TRUE sind, wird die Anweisung des Codeblocks n l in der else-Klausel ausgeführt.
DEMO
<?php $week = date("D"); //获取当前的星期值,如Mon、Tue、Wed等 if ( $week == "Mon" ) { echo "星期一"; } elseif ( $week == "Tue" ) { echo "星期二"; } elseif ( $week == "Wed" ) { echo "星期三"; } elseif ( $week == "Thu" ) { echo "星期四"; } elseif ( $week == "Fri" ) { echo "星期五"; } elseif ( $week == "Sat" ) { echo "星期六"; } elseif ( $week == "Sun" ) { echo "星期日"; } ?>
Die switch-Anweisung ähnelt elseif. Es handelt sich ebenfalls um eine multidirektionale bedingte Verzweigungsstruktur, aber die if- und elseif-Anweisungen verwenden boolesche Ausdrücke oder boolesche Werte als Verzweigungsbedingungen, während die switch-Anweisung wird zum Testen eines Ausdrucks verwendet. Der Wert der Formel wird ausgewählt und das entsprechende Verzweigungsprogramm wird gemäß den Testergebnissen ausgeführt, um eine Verzweigungssteuerung zu erreichen. Die Switch-Anweisung besteht aus einem Auswahlausdruck und mehreren Case-Labels. Den Case-Labels folgt ein Codeblock. Bei der Verwendung der Switch-Anweisung sollten Sie auf folgende Punkte achten: Der Datentyp des Auswahlausdrucks nach der Switch-Anweisung kann nur eine Ganzzahl oder eine Zeichenfolge sein, kein Boolescher Wert. Normalerweise ist dieser Kontrollausdruck ein Variablenname.
Die geschweiften Klammern nach der switch-Anweisung sind erforderlich.
Die Anzahl der Case-Anweisungen ist nicht festgelegt und kann unbegrenzt erhöht werden. Zwischen dem case-Tag und dem darauf folgenden Wert sollte jedoch ein Leerzeichen stehen, und nach dem Wert muss ein Doppelpunkt stehen, der Teil der Syntax ist.
Nachdem der Switch-Abgleich abgeschlossen ist, werden die Anweisungen in den übereinstimmenden Zweigmodulen nacheinander ausgeführt und die Ausführung wird nicht gestoppt, bis die Switch-Struktur endet oder eine Break-Anweisung auftritt.
Auf die Standardbezeichnung in der Switch-Anweisung folgt direkt ein Doppelpunkt, was bedeutet, dass der Wert des Ausdrucks nicht gleich dem Wert nach einer vorherigen Fallbezeichnung sein darf, und dann wird die Anweisung im Standardzweig ausgeführt. Das Standard-Tag kann weggelassen werden.
DEMO
<?php $week = date("D"); switch( $week ) { case "Mon": echo "星期一"; break; case "Tue": echo "星期二"; break; case "Wed": echo "星期三"; break; case "Thu": echo "星期四"; break; case "Fri": echo "星期五"; break; case "Sat": echo "星期六"; break; case "Sun": echo "星期日"; break; } ?>
Verschachtelter bedingter Zweig
Die verschachtelte bedingte Zweigstruktur ist die Verschachtelung von if-Anweisungen, was bedeutet, dass der Codeblock nach if or else eine if-Anweisung enthält.
DEMO
<?php $sex = "male"; //用户输入的性别 $age = 25; //用户输入的年龄 if ( $sex == "male" ) { //如果用户输入的是男性则执行下面的区块 if ( $age >= 60 ) { //如果是男性并且年龄在60以上则执行下面的区块 echo "这个先生已退休".($age-60)."年了"; } else { //如果是男性并且年龄在60以下则执行下面的区块 echo "这个先生在工作,还有".(60-$age)."年才能退休"; } } else { //如果用户输入的是女性则执行下面的区块 if( $age >= 55 ) { //如果是女性并且年龄在55以上则执行下面区块 echo "这个女士已退休".($age-55)."年了"; } else { //如果是女性并且年龄在55以下则执行下面区块 echo "这个女士在工作,还有".(55-$age)."年才能退休"; } } ?>
Empfohlenes Lernen: „
PHP-Video-TutorialDas obige ist der detaillierte Inhalt vonWas bedeutet PHP-Multi-Branch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!