溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

php中for和foreach循環(huán)語(yǔ)句的區(qū)別是什么

發(fā)布時(shí)間:2021-06-30 16:35:18 來(lái)源:億速云 閱讀:141 作者:Leah 欄目:編程語(yǔ)言

這篇文章給大家介紹php中for和foreach循環(huán)語(yǔ)句的區(qū)別是什么,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

  php循環(huán)語(yǔ)句for和foreach的區(qū)別有哪些

  有兩種語(yǔ)法,第二種比較次要但卻是第一種的有用的擴(kuò)展.

  foreach(array_expressionas$value){

  ......

  }

  foreach(array_expressionas$key=>$value){

  ......

  }

  第一種格式遍歷給定的array_expression數(shù)組.每次循環(huán)中,當(dāng)前單元的值被賦給$value并且數(shù)組內(nèi)部的指針向前移一步(因此下一次循環(huán)中將會(huì)得到下一個(gè)單元).

  第二種格式做同樣的事,只除了當(dāng)前單元的鍵名也會(huì)在每次循環(huán)中被賦給變量$key.

  自php5起,還可能遍歷對(duì)象.

  注:當(dāng)foreach開(kāi)始執(zhí)行時(shí),數(shù)組內(nèi)部的指針會(huì)自動(dòng)指向第一個(gè)單元.這意味著不需要在foreach循環(huán)之前調(diào)用reset().

  注:除非數(shù)組是被引用,foreach所操作的是指定數(shù)組的一個(gè)拷貝,而不是該數(shù)組本身.因此數(shù)組指針不會(huì)被each()結(jié)構(gòu)改變,對(duì)返回的數(shù)組單元的修改也不會(huì)影響原數(shù)組.不過(guò)原數(shù)組的內(nèi)部指針的確在處理數(shù)組的過(guò)程中向前移動(dòng)了.假定foreach循環(huán)運(yùn)行到結(jié)束,原數(shù)組的內(nèi)部指針將指向數(shù)組的結(jié)尾.

  php循環(huán)語(yǔ)句for和foreach的區(qū)別有哪些

  自php5起,可以很容易地通過(guò)在$value之前加上&來(lái)修改數(shù)組的單元.此方法將以引用賦值而不是拷貝一個(gè)值.

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

  foreach($arras&$value){

  $value=$value*2;

  }

  //$arrisnowarray(2,4,6,8)

  ?>

  此方法僅在被遍歷的數(shù)組可以被引用時(shí)才可用(例如是個(gè)變量).

  注意:foreach不支持用“@”來(lái)抑制錯(cuò)誤信息的能力。

關(guān)于php中for和foreach循環(huán)語(yǔ)句的區(qū)別是什么就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI