亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php如何在foreach循環中修改原數組

發布時間:2022-09-29 11:53:22 來源:億速云 閱讀:166 作者:iii 欄目:編程語言

本篇內容介紹了“php如何在foreach循環中修改原數組”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

在php中,只需要foreach語句采用引用循環的方式,那么在循環體內對原數組進行操作(修改),就會影響原數組本身;語法“foreach ($array as &$value){//循環體語句塊;}”或“foreach ($array as $key => &$value){//循環體語句塊;}”。

本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦

foreach是專門為遍歷數組而設計的語句,是遍歷數組時常用的方法,在遍歷數組方面提供了很大的便利;PHP5后還可以遍歷對象(foreach僅能夠應用于數組和對象)。

foreach語句遍歷數組與數組下標無關,且可以用于不連續的索引數組和以字符串為下標的關聯數組。

foreach語句有兩種語法格式:

語法格式1:

foreach ($array as $value){
    //循環體語句塊;
}

登錄后復制

  • 遍歷給定的 $array 數組,在每次循環中將當前數組的值賦給 $value。

語法格式2:

foreach ($array as $key => $value){
    //循環體語句塊;
}

  • 遍歷給定的 $array 數組,在每次循環中會將當前數組的值賦給 $value,鍵名賦給 $key。

說明:

foreach語句在每次循環時,數組內部的指針會向前移一步,這樣在下一次循環中會得到下一個數組元素,直到遍歷到數組的末尾,停止遍歷并退出循環。

在foreach循環中修改原數組

一般情況下,使用foreach語句遍歷數組時,是對數組的備份進行操作,一般不會影響數組本身。

例如:在循環內部修改數組,然后在循環外訪問數組,會發現數組沒有改變


php如何在foreach循環中修改原數組

可以看出,兩個輸出是一樣的,數組元素沒有發生變化;此時在foreach循環中對原數組的修改是無效的。

但有時候是需要通過foreach循環來改變數組,那要怎么辦?

可以采用引用循環(就是在 $value 之前加上 &,這樣foreach語句會以引用賦值而不是拷貝一個值),那么在循環體內對原數組進行操作,就會影響原數組本身。


php如何在foreach循環中修改原數組

可以看出:數組元素發生了變化,元素值都乘以了2。

但最后一個元素前,多了一個&,這又是怎么了?怎么去除?

這因為數組最后一個元素的 $value 引用在 foreach 循環之后仍會保留。我們需要在輸出數組前,使用unset() 來將其銷毀。

unset($value); // 最后取消掉引用
var_dump($array)

登錄后復制

php如何在foreach循環中修改原數組

&符消失了!

“php如何在foreach循環中修改原數組”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

瓮安县| 乌拉特后旗| 六枝特区| 深水埗区| 棋牌| 梁平县| 台北县| 阿图什市| 项城市| 建德市| 神池县| 临夏县| 黄梅县| 雷山县| 新龙县| 宁武县| 左权县| 新建县| 大丰市| 玛多县| 保德县| 廉江市| 三门峡市| 葫芦岛市| 元江| 红桥区| 七台河市| 将乐县| 龙游县| 喀喇沁旗| 德江县| 印江| 霍州市| 元谋县| 清远市| 麦盖提县| 长寿区| 阿巴嘎旗| 临桂县| 内丘县| 建宁县|