Penggunaan pernyataan suis struktur cawangan dalam kawalan aliran PHP
Penggunaan pernyataan suis struktur cawangan
Saya masih ingat kisah yang kami ceritakan pada mulanya:
Keluarga Wang rakan sekelas Wang sangat kaya, jadi jadualnya adalah biasa. lain sikit.
Terdapat 6 cara untuk mengembara, seperti berikut:
1, pemandu memandu
2, penerbangan awam
3, Kapal terbang peribadinya
4, kereta api
5, menunggang kuda
6, kapal pesiar
caranya Terdapat 6 jenis, dan dadu sangat bagus dengan 6 sisi. Oleh itu, kita boleh menggunakan kaedah penghakiman if...elseif..., tetapi kecekapannya terlalu rendah.
Adakah ada cara lain yang lebih baik? Satu cara yang boleh kita gunakan ialah: suis...sintaks huruf besar. Struktur sintaks
suis...kes adalah seperti berikut:
<?php switch(變量){ //字符串,整型 case 具體值: 執(zhí)行代碼; break; case 具體值2: 執(zhí)行代碼2; break; case 具體值3: 執(zhí)行代碼3; break; default: } ?>
Pembolehubah yang akan dinilai diletakkan selepas suis, dan hasilnya diletakkan selepas kes. Apakah nilai pembolehubah selepas suis? Nilai kes ditulis dalam segmen kod yang sama dengan pembolehubah suis.
Pemecahan di atas adalah pilihan
Lain di atas juga pilihan
Jangan tulis koma bertitik demi huruf, diikuti dengan titik bertindih:
Jangan tulis dalam huruf besar. Tulis selang penghakiman kemudian, seperti ($foo > 20 atau $foo == 30)
Pembolehubah dalam suis sebaiknya adalah integer atau rentetan, kerana pertimbangan Boolean lebih sesuai untuk jika...lain..
Jika kita menggunakan carta alir untuk mewakilinya, hasilnya akan seperti yang ditunjukkan di bawah:
Kami menggunakan fungsi rand dalam kelas terakhir, jadi sekarang kami menggunakan rand untuk melaksanakan pemilihan soalan Wang Sixong:
<?php //定義出行工具 $tool=rand(1,6); switch($tool){ case 1: echo '司機(jī)開(kāi)車'; break; case 2: echo '民航'; break; case 3: echo '自己家的專機(jī)'; break; case 4: echo '火車動(dòng)車'; break; case 5: echo '騎馬'; break; case 6: echo '游輪'; break; } ?>
Kami hanya perlu membuat pengubahsuaian ringkas pada kod di atas untuk melaksanakan permainan dadu dan gunting kertas batu yang mudah yang kami mainkan di WeChat. Fikirkanlah?
Anda boleh mencuba percubaan sekali lagi:
Kami boleh mengalih keluar pecahan dalam segmen kod kes 1. Apakah kesannya?
Mari kita tulis penilaian mingguan yang mudah sekali lagi Kaedah penulisan juga boleh menjadi pelik sedikit:
<?php //得到今天是星期幾的英文簡(jiǎn)稱 $day = date('D'); switch($day){ //拿學(xué)校舉例,我們讓星期一、二、三是校長(zhǎng)日 case 'Mon': case 'Tue': case 'Wed': echo '校長(zhǎng)日'; break; echo '星期三'; break; case 'Thu': echo '星期四'; break; case 'Fri': echo '星期五'; break; default: echo '周末,周末過(guò)的比周一到周五還要累<br />'; }; ?>
Cuba sendiri:
Dalam contoh di atas, didapati defaultk dilaksanakan apabila terdapat ketidakpadanan, bukan?
Sudah tentu anda juga boleh melakukan ini, tetapi penulisan seperti ini terlalu memenatkan, dan ia lebih mudah tanpa jika...lain. Kita tidak perlu bertukar...kes untuk membuat pertimbangan yang benar dan salah
<?php //用swith...case來(lái)完成bool判斷 $bool=true; switch($bool){ case true: case false: } /*********分隔線*******************/ if($bool){ }else{ } ?>
Penantian yang paling tergila-gila di dunia ialah saya kes dan awak bertukar Saya menunggu senyap, tetapi awak tidak memilih saya!