php yield 的作用

不言
發布: 2023-03-25 06:34:02
原創
4663 人瀏覽過

這篇文章主要介紹了關於php yield 的作用,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

function createRange($number){  
  for($i=0;$i<$number;$i++){
        yield time();
    }
}$result = createRange(10); // 这里调用上面我们创建的函数
foreach($result as $value){  
  sleep(1);  
    echo $value.&#39;<br />';
 }
登入後複製

  1. 首先呼叫 createRange 函數,傳入參數10,但是 for 值執行了一次然後停止了,並且告訴 #foreach 第一次循環可用的值。

  2. foreach 開始對 $result循環,進來先 sleep(1) ,然後開始使用 for 給予的一個值執行輸出。

  3. foreach 準備第二個循環,在開始第二個循環之前,它向 

    for 循環又請求了一次。
  4.  for 循環於是又執行了一次,將產生的時間戳告訴

    foreach .##################
  5.  foreach 拿到第二個值,並且輸出。由於 foreach 中 sleep(1) ,所以, for 迴圈延遲了1秒產生目前時間

#所以,整個程式碼執行中,總是只有一個記錄值參與循環,記憶體中也只有一則訊息。

無論開始傳入的 $number 有多大,由於不會立即產生所有結果集,所以記憶體總是循環的值。

相關推薦:

##php中static與yield關鍵字的深入理解

有關yield的詳細介紹#

以上是php yield 的作用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板