phasty / stream
此包的最新版本(0.2.2)没有可用的许可证信息。
PHP 流库
0.2.2
2016-02-11 04:49 UTC
Requires
- phasty/events: 0.1.*@dev
- phasty/log: 0.1.*@dev
This package is not auto-updated.
Last update: 2024-09-24 02:57:42 UTC
README
此组件是不同类型PHP流的包装器
用法
本包的类允许您以非阻塞的方式处理文件、套接字、管道、输入/输出流等流
use Phasty\Stream\Stream;
use Phasty\Stream\StreamSet;
use Phasty\Stream\Timer;
// use wrapper for STDIN
$readStream = new Stream(STDIN);
// streamset allows you work with different streams at sames time tih interraptions for timers
$streamSet = StreamSet::instance();
$streamSet->addReadStream($readStream);
$readStream->on("data", function($event) use ($streamSet) {
$data = $event->getData();
if (trim($data) === "q") {
$streamSet->stop();
return;
}
echo "you wrote: " . $event->getData();
});
$timer = new Timer(2, 0, function() {
echo "Now: " . date("H:i:s"), "\n";
});
$streamSet->addTimer($timer);
$streamSet->listen();
echo "exiting\n";
您将得到类似以下内容
Now: 20:52:11
dawd
you wrote: dawd
Now: 20:52:13
q
exiting