Dalam PHP, while
, do-while
, dan for
gelung digunakan untuk melaksanakan blok kod berulang kali berdasarkan keadaan tertentu. Walau bagaimanapun, mereka berbeza dalam sintaks mereka dan menggunakan kes:
Semasa gelung:
Gelung while
melaksanakan blok kod selagi keadaan yang ditentukan adalah benar. Ia memeriksa keadaan sebelum melaksanakan badan gelung, yang bermaksud bahawa jika keadaannya pada mulanya palsu, badan gelung mungkin tidak pernah dilaksanakan.
<code class="php">while (condition) { // code to be executed }</code>
Do-while loop:
Gelung do-while
itu sama dengan gelung while
tetapi menjamin bahawa badan gelung melaksanakan sekurang-kurangnya sekali sebelum memeriksa keadaan. Ini kerana keadaan diperiksa pada akhir gelung.
<code class="php">do { // code to be executed } while (condition);</code>
Untuk gelung:
Gelung for
biasanya digunakan apabila bilangan lelaran diketahui terlebih dahulu. Ia menggabungkan permulaan, keadaan, dan kenaikan/penurunan dalam satu baris. Badan gelung dijalankan selagi keadaannya benar.
<code class="php">for (initialization; condition; increment/decrement) { // code to be executed }</code>
Setiap jenis gelung mempunyai kekuatannya dan sesuai untuk senario yang berbeza berdasarkan keperluan khusus kod.
Gelung while
di PHP paling sesuai untuk senario di mana bilangan lelaran tidak diketahui atau gelung hanya perlu diteruskan sementara keadaan tertentu tetap benar. Beberapa kes penggunaan khusus termasuk:
Membaca dari fail atau pangkalan data:
Apabila memproses data dari fail atau pangkalan data sehingga akhir dicapai, gelung while
boleh digunakan untuk terus membaca selagi terdapat data yang tersedia.
<code class="php">$file = fopen("example.txt", "r"); while (($line = fgets($file)) !== false) { echo $line; } fclose($file);</code>
Pengesahan Input Pengguna:
Gelung while
boleh digunakan untuk berulang kali meminta input pengguna sehingga input yang sah disediakan.
<code class="php">$input = ""; while ($input != "yes" && $input != "no") { $input = readline("Enter 'yes' or 'no': "); }</code>
Perbezaan utama antara pelaksanaan gelung do-while
dan gelung while
dalam PHP terletak ketika keadaan diperiksa:
Semasa Loop: Keadaan ini diperiksa sebelum badan gelung dilaksanakan. Sekiranya keadaan itu palsu dari awal, badan gelung tidak akan berjalan.
<code class="php">$i = 5; while ($i </code>
DO-While Loop: Badan gelung dilaksanakan sekurang-kurangnya sekali sebelum keadaan diperiksa. Ini memastikan bahawa badan gelung berjalan sekurang -kurangnya sekali, walaupun keadaannya palsu pada mulanya.
<code class="php">$i = 5; do { echo $i; $i ; } while ($i </code>
Perbezaan ini membuat gelung do-while
sesuai untuk senario di mana badan gelung perlu dilaksanakan sekurang-kurangnya sekali, seperti memulakan keadaan permainan atau melakukan tindakan yang harus berlaku sekurang-kurangnya sekali sebelum memutuskan untuk meneruskan.
A for
gelung sering lebih cekap daripada gelung while
apabila anda mengetahui bilangan lelaran terlebih dahulu dan perlu menguruskan kaunter atau indeks. Inilah contoh yang menunjukkan ini:
Senario: Melangkah ke atas array untuk mencetak unsur -unsurnya.
Menggunakan gelung while
:
<code class="php">$array = [1, 2, 3, 4, 5]; $index = 0; $length = count($array); while ($index </code>
Menggunakan for
:
<code class="php">$array = [1, 2, 3, 4, 5]; for ($i = 0, $length = count($array); $i </code>
Dalam kes ini, for
untuk lebih cekap kerana:
for
menggabungkan ketiga -tiga komponen ini ke dalam satu pernyataan, menjadikan kod bersih dan berpotensi lebih mudah bagi pengkompil/penterjemah untuk mengoptimumkan.$i
dalam Loop for
dilengkapkan ke gelung itu sendiri, mengurangkan risiko penggunaan semula atau gangguan pembolehubah yang tidak diingini dengan bahagian lain kod.for
gelung secara jelas menyatakan aliran kawalan gelung, menjadikannya lebih mudah untuk memahami dan mengubah suai logik lelaran sekilas. Secara keseluruhannya, apabila anda perlu melangkah ke atas julat atau koleksi yang diketahui, for
boleh menjadi lebih cekap dan lebih jelas daripada gelung while
.
Atas ialah kandungan terperinci Jelaskan perbezaan antara sementara, lakukan, dan untuk gelung di PHP.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!