淺析PHP遍歷數(shù)組使用方法
我們大家都認識到了數(shù)組的優(yōu)越性,現(xiàn)在我們將學(xué)習(xí)怎樣PHP遍歷數(shù)組中的數(shù)據(jù)。這種操作數(shù)組方法的應(yīng)用是非常普遍的,我相信你會掌握得很好。比如你的網(wǎng)站存有大量的網(wǎng)址數(shù)據(jù),你想在一個頁面顯示門戶網(wǎng)站網(wǎng)址,這些數(shù)據(jù)已經(jīng)保存到了一個數(shù)組變量$url里,那么怎樣把這些數(shù)據(jù)一個一個輸出到網(wǎng)頁里呢?你還想象上節(jié)課那樣一個一個echo輸出嗎?別忘了數(shù)據(jù)量是非常大而且數(shù)據(jù)的個數(shù)是經(jīng)常變化的噢。PHP當(dāng)然會有簡單的辦法,先看一個例子:
- foreach
- <?php
- $url=array('新浪'=>'www.sina.com',
- '雅虎'=>'www.yahoo.com',
- '網(wǎng)易'=>'www.163.com',
- '騰訊'=>'www.qq.com',
- '百度'=>'www.baidu.com'
- );
- foreach($urlas$link){
- echo$link.'<br><br>';
- }
- ?>
上面的代碼中我們用到了foreach語句,這是一個用來PHP遍歷數(shù)組中數(shù)據(jù)的最簡單有效的方法。
foreach僅能用于數(shù)組,當(dāng)試圖將其用于其它數(shù)據(jù)類型或者一個未初始化的變量時會產(chǎn)生錯誤。有兩種語法,第二種比較次要但卻是第一種的有用的擴展。
PHP遍歷數(shù)組語法:
- foreach(array_expressionas$value)statement
#T#這種格式遍歷給定的array_expression數(shù)組,as是關(guān)鍵詞。每次循環(huán)中,當(dāng)前單元的值被賦給$value并且數(shù)組內(nèi)部的指針向前移一步(因此下一次循環(huán)中將會得到下一個單元)。statement是后續(xù)操作,如果有多個語句,你可以象上例那樣采用大括號包含。上例中,我們循環(huán)讀取數(shù)組$url中的每個單元,并且每次都把該單元的值賦值給變量$link,再echo打印輸出這個$link的值,然后再進行下一次循環(huán)直到數(shù)組中不再有數(shù)據(jù)。你動手試了嗎?如果你試了,看到輸出結(jié)果是不是覺得很有趣呢?我知道一會兒你就又有疑問了:為什么沒有“新浪”“網(wǎng)易”這樣的站名呢?要怎樣做才能得到呢?
在$url數(shù)組定義中,“新浪”“網(wǎng)易”等都是作的鍵名而不是數(shù)組的值,我們的第一種語法只是循環(huán)取得數(shù)組中每個值。





















