PHP產生器簡單一實例_PHP教程

來源:互聯網
上載者:User

PHP產生器簡單一實例


  這篇文章主要介紹了PHP產生器簡單一實例,本文講解了range、xrange函數的基本使用執行個體,需要的朋友可以參考下

  一般你在迭代一組資料的時候,需要建立一個資料,假設數組很大,則會消耗很大效能,甚至造成記憶體不足。

   代碼如下:

  //Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in E:\php\test\index.php on line 5

  range(1, 100000000);

  PHP5.5實現了產生器,每當產生一個數組元素則用yield關鍵詞返回,並且執行函數暫停,當執行函數next方法時,則會從上一次被yield的位置開始繼續執行,如下例子,只會產生中間變數$i

   代碼如下:

  function xrange($start, $limit, $step = 1) {

  for ($i = $start; $i <= $limit; $i += $step) {

  yield $i;

  }

  }

  foreach (xrange(1, 9, 1) as $number) {

  echo "$number ";

  }

http://www.bkjia.com/PHPjc/1000079.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1000079.htmlTechArticlePHP產生器簡單一實例 這篇文章主要介紹了PHP產生器簡單一實例,本文講解了range、xrange函數的基本使用執行個體,需要的朋友可以參考下 一般你在迭代...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.