您好,登錄后才能下訂單哦!
php中怎么使用foreach?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
在PHP中經常會用到foreach的使用,而要用到foreach,就必須用到數組,php foreach是基于php編程環境下的語法,主要用于循環遍歷數組。每進行一次循環,當前數組元素的值就會被賦值給 value 變量(數組指針會逐一地移動) - 以此類推。
能夠應用的編程語言類別:Java、C#、PHP、D語言(Phobos庫)。
foreach語句是c#中新增的循環語句,他對于處理數組及集合等數據類型特別方便。
foreach語句的一般語法格式如下:
foreach(數據類型 標識符 in 表達式) { 循環體2 }。
php 4 引入了 foreach 結構,和 Perl 以及其他語言很像。這只是一種遍歷數組簡便方法。foreach 僅能用于數組,當試圖將其用于其它數據類型或者一個未初始化的變量時會產生錯誤。有兩種語法,第二種比較次要但卻是第一種的有用的擴展。
foreach (array_expression as $value) statement
第一種格式遍歷給定的 array_expression 數組。每次循環中,當前單元的值被賦給 $value 并且數組內部的指針向前移一步(因此下一次循環中將會得到下一個單元)。
foreach (array_expression as $key => $value) statement
第二種格式做同樣的事,只除了當前單元的鍵名也會在每次循環中被賦給變量 $key。
自php 5 起,還可能遍歷對象。注: 當 foreach 開始執行時,數組內部的指針會自動指向第一個單元。這意味著不需要在 foreach 循環之前調用 reset()。
注: 除非數組是被引用,foreach 所操作的是指定數組的一個拷貝,而不是該數組本身。因此數組指針不會被 each() 結構改變,對返回的數組單元的修改也不會影響原數組。不過原數組的內部指針的確在處理數組的過程中向前移動了。假定 foreach 循環運行到結束,原數組的內部指針將指向數組的結尾。
自 php 5 起,可以很容易地通過在 $value 之前加上 & 來修改數組的單元。此方法將以引用賦值而不是拷貝一個值。
<?php $arr = array(1, 2, 3, 4); foreach ($arr as &$value) { $value = $value * 2; } // $arr is now array(2, 4, 6, 8) ?>
此方法僅在被遍歷的數組可以被引用時才可用(例如是個變量)。
注: foreach 不支持用“@”來抑制錯誤信息的能力。
用戶可能注意到了以下的代碼功能完全相同:
<?php $arr = array("one", "two", "three"); reset($arr); while (list(, $value) = each($arr)) { echo "Value: $value<br>/n"; }foreach ($arr as $value) { echo "Value: $value<br />/n"; } ?>
以下代碼功能也完全相同:
<?php $arr = array("one", "two", "three"); reset($arr); while (list($key, $value) = each($arr)) { echo "Key: $key; Value: $value<br />/n"; }foreach ($arr as $key => $value) { echo "Key: $key; Value: $value<br />/n"; } ?>
關于php中怎么使用foreach問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。