PHP 收益关键字
示例
一条yield语句与return语句相似,只不过yield并不会停止执行函数并返回,而是返回了Generator对象并暂停了Generator函数的执行。
这是范围函数的示例,写为生成器:
function gen_one_to_three() {
for ($i = 1; $i <= 3; $i++) {
//注意,$i在收益率之间保留。
yield $i;
}
}您可以通过检查以下输出看到此函数返回Generator对象var_dump:
var_dump(gen_one_to_three())
# Outputs:
class Generator (0) {
}屈服价值
然后可以像数组一样遍历Generator对象。
foreach (gen_one_to_three() as $value) {
echo "$value\n";
}上面的示例将输出:
1 2 3
通过键产生价值
除了产生值之外,您还可以产生键/值对。
function gen_one_to_three() {
$keys = ["first", "second", "third"];
for ($i = 1; $i <= 3; $i++) {
//注意,$i在收益率之间保留。
yield $keys[$i - 1] => $i;
}
}
foreach (gen_one_to_three() as $key => $value) {
echo "$key: $value\n";
}上面的示例将输出:
first: 1 second: 2 third: 3
热门推荐
10 圣诞祝福语简短小学
11 祖国七十华诞简短祝福语
12 老师送的祝福语简短
13 生日祝福语大全女生简短
14 祝女性生日祝福语简短
15 牛年女神节祝福语简短
16 情人表白祝福语简短大气
17 老公开业祝福语简短
18 官宣新年祝福语简短