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 具体值: 执行代码; break; case 具体值2: 执行代码2; break; case 具体值3: 执行代码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 '司机开车'; break; case 2: echo '民航'; break; case 3: echo '自己家的专机'; break; case 4: echo '火车动车'; 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 //得到今天是星期几的英文简称 $day = date('D'); switch($day){ //拿学校举例,我们让星期一、二、三是校长日 case 'Mon': case 'Tue': case 'Wed': echo '校长日'; break; echo '星期三'; break; case 'Thu': echo '星期四'; break; case 'Fri': echo '星期五'; break; default: echo '周末,周末过的比周一到周五还要累<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来完成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!