首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Generator::send

(PHP 5 >= 5.5.0, PHP 7)

Generator :: send - 将值发送到生成器

描述

代码语言:javascript
复制
public mixed Generator::send ( mixed $value )

作为当前良率表达式的结果,将给定值发送给生成器,并恢复生成器的执行。

如果在调用此方法时生成器不处于yield表达式,那么在发送该值之前,将首先让它前进到第一个yield表达式。因此,没有必要使用Generator :: next()调用来“启动”PHP生成(就像在Python中完成的那样)。

参数

value

值发送到生成器。该值将是生成器当前所处的yield表达式的返回值。

返回值

返回已产生的值。

例子

Example#1使用Generator :: send()来注入值

代码语言:javascript
复制
<?php
function?printer()?{
????echo?"I'm?printer!".PHP_EOL;
????while?(true)?{
????????$string?=?yield;
????????echo?$string.PHP_EOL;
????}
}

$printer?=?printer();
$printer->send('Hello?world!');
$printer->send('Bye?world!');
?>

上面的例子将输出:

代码语言:javascript
复制
I'm printer!
Hello world!
Bye world!

← Generator::rewind

Generator::throw →

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com