首頁 php教程 php手册 php循环语句for和foreach的区别

php循环语句for和foreach的区别

Jun 06, 2016 pm 07:50 PM
for foreach php 差別 循環 語句 進入

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 php中循环语句for和foreach的区别: php从版本4开始引入了 foreach 结构,这和perl以及其他语言很类似.这只是一种遍历数组的简便方法.foreach 仅能用于数组,当试图将其用于其它数据类型或者一个未初始

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

    php中循环语句for和foreach的区别:

    php从版本4开始引入了 foreach 结构,这和perl以及其他语言很类似.这只是一种遍历数组的简便方法.foreach 仅能用于数组,当试图将其用于其它数据类型或者一个未初始化的变量时会产生错误.

    有两种语法,第二种比较次要但却是第一种的有用的扩展.

    foreach (array_expression as $value){

    ... ...

    }

    foreach (array_expression as $key => $value){

    ... ...

    }

    第一种格式遍历给定的 array_expression 数组.每次循环中,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元).

    第二种格式做同样的事,只除了当前单元的键名也会在每次循环中被赋给变量 $key.

    自php 5 起,还可能遍历对象.

    注: 当 foreach 开始执行时,数组内部的指针会自动指向第一个单元.这意味着不需要在 foreach 循环之前调用 reset().

    注: 除非数组是被引用,foreach 所操作的是指定数组的一个拷贝,而不是该数组本身.因此数组指针不会被 each() 结构改变,对返回的数组单元的修改也不会影响原数组.不过原数组的内部指针的确在处理数组的过程中向前移动了.假定 foreach 循环运行到结束,原数组的内部指针将指向数组的结尾.

    自php5起,可以很容易地通过在 $value 之前加上 & 来修改数组的单元.此方法将以引用赋值而不是拷贝一个值.

   

    $arr = array(1, 2, 3, 4);

    foreach ($arr as &$value) {

    $value = $value * 2;

    }

    // $arr is now array(2, 4, 6, 8)

    ?>

    此方法仅在被遍历的数组可以被引用时才可用(例如是个变量).

    注意: foreach 不支持用“@”来抑制错误信息的能力.

php循环语句for和foreach的区别

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 Dec 24, 2024 pm 04:42 PM

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 Dec 20, 2024 am 11:31 AM

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發

deepseek r1版本和v3版本有什麼區別 deepseek r1版本和v3版本有什麼區別 Feb 19, 2025 pm 03:24 PM

deepseek r1版本和v3版本有什麼區別

DeepSeek使用常見問題匯總 DeepSeek使用常見問題匯總 Feb 19, 2025 pm 03:45 PM

DeepSeek使用常見問題匯總

比特幣有沒有股票?比特幣有股權嗎? 比特幣有沒有股票?比特幣有股權嗎? Mar 03, 2025 pm 06:42 PM

比特幣有沒有股票?比特幣有股權嗎?

您如何在PHP中解析和處理HTML/XML? 您如何在PHP中解析和處理HTML/XML? Feb 07, 2025 am 11:57 AM

您如何在PHP中解析和處理HTML/XML?

php程序在字符串中計數元音 php程序在字符串中計數元音 Feb 07, 2025 pm 12:12 PM

php程序在字符串中計數元音

盤前盤後交易有什麼區別?盤前盤後交易區別詳解 盤前盤後交易有什麼區別?盤前盤後交易區別詳解 Mar 03, 2025 pm 11:54 PM

盤前盤後交易有什麼區別?盤前盤後交易區別詳解

See all articles