$v){//Loop code}"; ,$v)=each($ arr)){//Kod gelung}"."/> $v){//Loop code}"; ,$v)=each($ arr)){//Kod gelung}".">
Rumah >pembangunan bahagian belakang >masalah PHP >Apakah tiga cara untuk melintasi tatasusunan dalam php
3 cara untuk melintasi tatasusunan: 1. Gunakan untuk pernyataan untuk melintasi, sintaks "untuk($i=0;$i
$v){//Loop code}" 3. Gunakan while with each() dan list() untuk melintasi, sintaksnya ialah "while( list($k, $v)=each($arr)){//Kod gelung}".
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3
Merentasi tatasusunan dalam PHP Terdapat tiga kaedah yang biasa digunakan:
Gunakan pernyataan for untuk menggelungkan melalui tatasusunan; untuk melintasi tatasusunan;
Gunakan list(), setiap() dan gelung while dalam kombinasi untuk melintasi tatasusunan.
Yang paling berkesan daripada ketiga-tiga kaedah ini ialah menggunakan pernyataan foreach untuk melintasi tatasusunan. Struktur foreach telah diperkenalkan sejak PHP4 Ia adalah pernyataan yang direka khusus untuk merentasi tatasusunan dalam PHP dan disyorkan untuk digunakan oleh semua orang. Mari kita perkenalkan kaedah ini terlebih dahulu.
Kaedah 1: Gunakan pernyataan for untuk melintasi
Gelung for akan mentakrifkan semula pembolehubah yang mengawal bilangan gelung dalam untuk penyataan, jadi gelung for Pernyataan itu boleh melakukan operasi gelung mengikut bilangan gelung yang diketahui, yang sesuai untuk situasi di mana bilangan kali skrip perlu dijalankan diketahui dengan jelas. Format sintaks untuk gelung adalah seperti berikut:
Analisis pernyataan:for (初始化语句; 循环条件; 变量更新--自增或自减) { 语句块; }
Pernyataan permulaan (ungkapan 1): terutamanya Memulakan nilai pembolehubah, yang digunakan untuk menetapkan pembilang, iaitu nilai pada permulaan gelung penyataan ini hanya dilaksanakan semasa gelung pertama dan tidak akan dilaksanakan lagi pada masa hadapan.
Keadaan gelung (ungkapan 2): keadaan sekatan pelaksanaan gelung, digunakan untuk mengawal sama ada untuk melaksanakan kod dalam badan gelung jika keadaannya BENAR, gelung diteruskan, jika keadaan adalah FALSE , gelung tamat dan keluar dari gelung serta-merta.
Kemas kini pembolehubah (ungkapan 3): ungkapan dengan operasi kenaikan kendiri atau pengurangan kendiri Setiap kali gelung dilaksanakan, nilai pembilang diubah suai dengan serta-merta bahawa gelung Keadaan secara beransur-ansur menjadi "tidak boleh dipertahankan".
Blok penyata: Beberapa kod yang perlu dilaksanakan apabila syarat dinilai sebagai benar.
Contoh
<?php header("Content-type:text/html;charset=utf-8"); $array= array(2,"数学","梨子",3.14,"榴莲",12); var_dump($array); echo "遍历数组:<br>"; for ($i=0; $i < count($array); $i++) { echo $i.":".$array[$i] . "<br/>"; } ?>
kaedah 2: Gunakan pernyataan foreach untuk merentasi
foreach ialah pernyataan yang direka khas untuk merentasi tatasusunan Ia merupakan kaedah yang biasa digunakan semasa merentasi tatasusunan Objek juga boleh dilalui (foreach hanya boleh digunakan pada tatasusunan dan objek). Pernyataan foreach merentasi tatasusunan tanpa mengira subskrip tatasusunan, dan boleh digunakan untuk tatasusunan indeks terputus dan tatasusunan bersekutu dengan rentetan sebagai subskrip.
Pernyataan foreach mempunyai dua format sintaks:
Format sintaks 1:
foreach ($array as $value){ 语句块; }
<?php header("Content-type:text/html;charset=utf-8"); $array= array(2,"数学","梨子",3.14,"榴莲",12); var_dump($array); echo "遍历数组:<br>"; foreach ($array as $val){ echo "值是:" . $val ; echo "<br/>"; } ?>
Format tatabahasa 2:
foreach ($array as $key => $value){ 语句块; }
<?php header("Content-type:text/html;charset=utf-8"); $array= array(2,"数学","梨子",3.14,"榴莲",12); var_dump($array); echo "遍历数组:<br>"; foreach ($array as $key => $value) { echo "键名为:".$key.",键值为:".$value . "<br/>"; } ?>
Penjelasan:
setiap pernyataan di dalam tatasusunan setiap kali ia menggelung penunjuk akan bergerak ke hadapan satu langkah, supaya elemen tatasusunan seterusnya akan diperolehi dalam gelung seterusnya, sehingga penghujung tatasusunan dilalui, traversal berhenti dan gelung keluar.
Kaedah 3: Gunakan pernyataan while each() list() untuk merentasi
while loop pernyataan ialah apabila taip penyataan gelung, nilaikan dahulu keadaan gelung Apabila syarat itu dipenuhi, badan gelung akan dilaksanakan Jika ia tidak berpuas hati, ia akan berhenti.
setiap() fungsi mengembalikan nilai kunci semasa dalam tatasusunan dan menggerakkan penuding tatasusunan ke hadapan. Selepas melaksanakan setiap(), penunjuk tatasusunan akan kekal pada elemen seterusnya dalam tatasusunan atau pada elemen terakhir apabila penghujung tatasusunan dicapai.
list() function digunakan untuk menetapkan nilai kepada set pembolehubah dalam satu operasi.
sementara gelung setiap() fungsi senarai() fungsi boleh melintasi tatasusunan, mari kita lihat contoh kod di bawah:
Hasil keluaran:<?php header("Content-type:text/html;charset=utf-8"); $array= array(2,"数学","梨子",3.14,"榴莲",12); var_dump($array); echo "遍历数组:<br>"; while( list($key, $val) = each($array) ) { echo "$key => $val<br>"; } ?>
Penjelasan: dilaksanakan apabila ia tidak berpuas hati, badan gelung dilaksanakan kemudian berhenti.
作用:反复执行某一项操作,直到指定的条件不成立。
特点:先判断表达式,当表达式结果为真时执行相应的语句。
while循环的一般形式为:
while(表达式){ //表达式为循环条件 PHP语句块; //PHP语句块为循环体 }
语句解析:
先计算“表达式”的值,当值为真时, 执行循环体内的“PHP语句块”;
说明:“表达式”的计算结果是布尔类型( TRUE 或 FALSE)的,如果是其他类型的值也会自动转换为布尔类型的值(因为PHP是弱语言类型,会根据变量的值,自动把变量转换为正确的数据类型)。
“语句块”就是由
{ }
包围的一个或多个语句的集合;如果语句块中只有一个语句,也可以省略{ }
。
执行结束后,返回到表达式,再次计算表达式的值进行判断,当表达式值为真,则继续执行“语句块”……这个过程会一直重复
直到表达式的值为假时才跳出循环,执行while 下面的语句。
while语句的流程图如下所示:
通常“表达式”是使用比较运算符或者逻辑运算符计算后的值
注:“死循环”--无法靠自身的控制终止的循环
推荐:《PHP视频教程》
Atas ialah kandungan terperinci Apakah tiga cara untuk melintasi tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!