萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> PHP生成器簡單實例

PHP生成器簡單實例

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

  一般你在迭代一組數據的時候,需要創建一個數據,假設數組很大,則會消耗很大性能,甚至造成內存不足。

   代碼如下:

  //Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) in E:phptestindex.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 ";

  }

copyright © 萬盛學電腦網 all rights reserved