婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > PHP生成器功能與用法實例分析

PHP生成器功能與用法實例分析

熱門標簽:地圖標注專員怎么樣 寧波外呼營銷系統 福建銀行智能外呼系統價格 電話機器人銷售主要負責什么 四川保險智能外呼系統供應商 遼寧ai電銷機器人價格 上海做外呼線路的通信公司 房產中介用的是什么外呼系統 長沙做地圖標注公司

本文實例講述了PHP生成器功能與用法。分享給大家供大家參考,具體如下:

1. 官方說明:生成器提供了一種更容易的方法來實現簡單的對象迭代,相比較定義類實現 Iterator 接口的方式,性能開銷和復雜性大大降低。生成器允許你在 foreach 代碼塊中寫代碼來迭代一組數據而不需要在內存中創建一個數組。

2. 生成器就像一個普通的自定義函數一樣, 和普通函數只返回一次不同的是, 生成器可以根據需要 yield 多次,以便生成需要迭代的值。

3. 代碼示例:

//未使用生成器
echo '開始內存:'.getMemory().'br>';
$nums = range(0,1000000);
echo '結束內存:'.getMemory().'br>';
//輸出結果
//開始內存:0.23M
//結束內存:130.31​
//使用生成器
echo '開始內存:'.getMemory().'br>';
$nums = xrange(1000000);
function xrange($total)
{
  for ($i = 0; $i  $total; $i++) {
    yield $i;
  }
}
echo '結束內存:'.getMemory().'br>';
//輸出結果
//開始內存:0.23M
//結束內存:0.23M

4. 實際應用示例

/**
 * 大量數據生成示例
 * @param int $page
 * @param int $limit
 * @return Generator
 */
public function generator($page = 1,$limit = 50000)
{
  while (true) {
    echo "第{$page}次".'generator開始內存:'.$this->getMemory().'br>';
    $start = ($page-1) * $limit;
    $sql = "SELECT p.id,p.wh_code,p.goods_sn FROM p_product as p WHERE p.wh_code LIKE '%YB%' OR p.wh_code LIKE '%DZWH%' LIMIT {$start},{$limit} ";
    $resultAll = db()->fetchAll($sql);
    yield $resultAll; //生成器​
    if (count($resultAll) != $limit) {
      break;
    }
    echo "第{$page}次".'generator結束內存:'.$this->getMemory().'br>';
    $page++;
  }
}
    //測試生成器內存消耗
//    foreach ($this->generator() as $result) {
//      var_dump($result[0]);
//    }

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php常用函數與技巧總結》、《php字符串(string)用法總結》、《PHP數組(Array)操作技巧大全》、《PHP數據結構與算法教程》及《php程序設計算法總結》

希望本文所述對大家PHP程序設計有所幫助。

您可能感興趣的文章:
  • PHP Web表單生成器案例分析
  • PHP迭代器和生成器用法實例分析
  • PHP生成器(generator)和協程的實現方法詳解
  • PHP中你可能忽略的性能優化利器:生成器
  • PHP十六進制顏色隨機生成器功能示例
  • PHP新特性詳解之命名空間、性狀與生成器
  • php驗證碼生成器
  • thinkPHP連接sqlite3數據庫的實現方法(附Thinkphp代碼生成器下載)
  • PHP5.5迭代生成器用法實例詳解
  • PHP 生成器的使用詳解

標簽:佛山 宿遷 工商登記 澳門 宜春 延安 常德 深圳

巨人網絡通訊聲明:本文標題《PHP生成器功能與用法實例分析》,本文關鍵詞  PHP,生,成器,功能,與,用法,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PHP生成器功能與用法實例分析》相關的同類信息!
  • 本頁收集關于PHP生成器功能與用法實例分析的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 定襄县| 闻喜县| 武穴市| 图木舒克市| 句容市| 潼南县| 民县| 垣曲县| 铜鼓县| 鹤庆县| 淮滨县| 靖州| 桐城市| 靖宇县| 景泰县| 璧山县| 桃园县| 黄冈市| 凤翔县| 常宁市| 正镶白旗| 闸北区| 淮阳县| 基隆市| 遂溪县| 丹寨县| 济源市| 苏尼特左旗| 沛县| 鹤峰县| 巫山县| 长武县| 壶关县| 东光县| 山丹县| 莒南县| 青州市| 西城区| 奎屯市| 老河口市| 同江市|