PHP 之局部變數與全域變數的交錯(一)嵌套for迴圈中的變數

WBOY
發布: 2016-08-08 09:24:51
原創
1159 人瀏覽過

      相信許多從c++/java/c#等過來的同學,可能會犯這樣的錯誤:

<?php
  for($i=0;$i<9;$i++)
{
    #some code
    #many many code!...
    for($i=0;$i<8;$i++)
     {
          #some my ugly code
      }
}
?>
登入後複製

外面一個大的for循環,寫了很多程式碼,又要一個循環rrreee

外面一個大的for循環,寫了很多程式碼不想又丟個i,我們在其他語言都是這麼幹的,但在php這樣乾以後,你會發現,程式碼變成死循環了!究其原因是什麼呢?

   原來for語句並不是函數,只是一種語句形式,在php裡面,兩個i都被當作了全局變量,每次運行到完裡面的循環,i都被重新賦值為7,當然永遠都跳不出循環了。

    我的解決方法是盡量將每次for迴圈的自增變數名字區分開,這樣可以極大的避免這種問題。並且盡量使用foreach.

以上就介紹了PHP 之局部變量與全局變量的交錯(一)嵌套for循環中的變量,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

🎜 🎜
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!