Omkopplaren / fallet uttalandet ger liknande funktionalitet till if / elseif-satsen; Det erbjuder dock en mer elegant lösning och har kapacitet utöver if / elseif alternativet.
En omkopplare / fallutskrift tillåter flera jämförelser av en varible. Tänk på följande om du säger:
om ($ var == 1) {
eko "ett";
} elseif ($ var == 1) {
eko "två";
} annat {
eko "Övrigt";
}
Detta är identiskt med switch / fallet som följer:
växla ($ var) {
fall 1:
eko "ett";
ha sönder;
fall 2:
eko "två";
ha sönder;
standard:
eko "Övrigt";
}
I det här exemplet, om $ var är lika med 1, kommer det första fallet att vara sant; och den tillhörande koden (echo "One";) kommer att utföras. Den resulterande produktionen skulle vara enligt följande:
Ett
Om $ var inte matchade 1 eller 2, skulle koden i standardblocket exekveras precis som det sista andra blocket i ett if / elseif / else-meddelande.
Växlings- / fallutlåtanden skiljer sig från if / elseif-uttalanden, främst på grund av avbrottet. Utan break uttalanden i föregående exempel skulle ett värde på 1 för $ var matcha det första fallet block. Vidare kommer varje efterföljande fall blockkod att utföras tills ett pausutdrag uppträder, oavsett om $ var matchar de efterföljande fallrapporterna. Den resulterande produktionen skulle vara enligt följande:
Ett
Två
Andra