PHP 関数は、yield キーワードを使用してトラバーサーを返すことができます。これにより、値が 1 つずつ生成され、メモリが節約され、コードの可読性が向上し、フィルター、コンバーター、アグリゲーターなどの他の使用法がサポートされます。
PHP 関数がトラバーサーを返す方法
トラバーサーは、値を 1 つずつ生成する遅延データ構造です。したがって、コレクション全体を一度に生成することによるメモリ消費を回避できます。 PHP の関数は、yield
キーワードを使用してトラバーサーを返すことができます。
構文:
function* generatorName(): Generator { // 生成值 yield $value1; // ... }
実践例:
数値範囲の反復子を返す関数を考えてみましょう。
function numberRange(int $start, int $end): Generator { for ($i = $start; $i <= $end; $i++) { yield $i; } }
このトラバーサを使用します:
foreach (numberRange(1, 10) as $number) { echo "$number "; // 输出:1 2 3 4 5 6 7 8 9 10 }
利点:
その他の用途:
以上がPHP 関数はどのようにしてトラバーサーを返すのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。