首頁 > 後端開發 > php教程 > PHP數組的遍歷

PHP數組的遍歷

巴扎黑
發布: 2023-03-14 16:20:02
原創
1621 人瀏覽過

這三種方法中效率最高的是使用foreach語句遍歷陣列。從PHP4開始就引入了foreach結構,是PHP中專門為遍歷數組而設計的語句,推薦大家使用。先分別介紹這幾種方法

PHP中遍歷數組有三種常用的方法:
一、使用for語句循環遍歷數組;
二、使用foreach語句遍歷數組;
三、聯合使用list()、each()和while循環遍歷數組。
這三種方法中效率最高的是使用foreach語句遍歷陣列。從PHP4開始就引入了foreach結構,是PHP中專門為遍歷數組而設計的語句,推薦大家使用。先分別介紹這幾種方法。

一、使用for語句循環遍歷數組
值得大家注意的是使用for語句循環遍歷數組要求遍歷的數組必須是索引數組。 PHP中不僅有關聯數組而且還有索引數組,所以PHP很少用for語句循環遍歷數組。
實例程式碼如下:

程式碼如下:

<?php 
$arr = array(&#39;http://www.php.cn&#39;,&#39;PHP中文网&#39;,&#39;PHP教程&#39;); 
$num = count($arr); 
for($i=0;$i<$num;++$i){ 
echo $arr[$i].&#39;<br />&#39;; 
} 
?>
登入後複製

註解:上例程式碼中我們先計算出數組$arr中元素的個數,然後才使用在for語句,這樣做很有效率的。因為如果是for($i=0;$i< count($arr);++$i)的話,每次迴圈都會計算數組$arr中元素的個數,而使用上面的方式可以減去這種開銷。使用++$i也是為了提高效率,前面有文章我們有提到過,建議大家再看看。
上面程式碼的輸出結果為:
http://www.jb51.net
腳本之家
PHP教學

二、使用foreach語句遍歷陣列
使用foreach語句循環遍歷數組有二種方式,我們使用的最多的還是第一種方式。介紹如下:
第一種方式:
foreach(array_expression as $value){
//循環體
}
實例程式碼:

## 程式碼如下:

<?php 
$arr = array(&#39;http://www.php.cn&#39;,&#39;PHP中文网&#39;,&#39;PHP教程&#39;); 
foreach($arr as $value){ 
echo $value.&#39;<br />&#39;; 
} 
?>
登入後複製

每次迴圈中,目前元素的值被賦給變數$value,並且把陣列內部的指標往後移一步。所以下一次循環中會得到數組的下一個元素,直到數組的結尾才停止循環,結束數組的遍歷。


第二種方式:
foreach(array_expression as $key=>$value){
//循環體
}
實例程式碼:

程式碼如下:

<?php 
//定义数组 
$arr = array(&#39;http://www.php.cn&#39;,&#39;PHP中文网&#39;,&#39;PHP教程&#39;); 
foreach($arr as $k=>$v){ 
echo $k."=>".$v."<br />"; 
} 
?>
登入後複製


三、聯合使用list()、each()和while循環遍歷陣列 each()函數需要傳遞一個陣列作為一個參數,傳回數組中目前元素的鍵/值對,並向後移動數組指標到下一個元素的位置。
list()函數,這不是一個真正的函數,是PHP的一個語言結構。 list()用一步操作給一組變數賦值。

實例程式碼:

程式碼如下:

<?php 
//定义循环的数组 
$arr = array(&#39;website&#39;=>&#39;http://www.php.cn&#39;,&#39;webname&#39;=>&#39;php中文网&#39;) 
while(list($k,$v) = each($arr)){ 
echo $k.&#39;=>&#39;.$v.&#39;<br />&#39;; 
} 
?>
登入後複製

# 輸出結果為:
website=>http://www.php. cn
webname=>PHP程式設計師

總結:上述三種循環遍歷數組的方法中建議大家使用foreach語句循環遍歷數組,效率更高。

以上是PHP數組的遍歷的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板