有没有人知道如何在Yii框架中使用自定义命令读取标准输入?
我正在忙着编写脚本来处理通过php脚本传入的邮件,但也需要来自Yii框架内的功能。默认情况下,当您扩展CConsoleCommand时,Yii会将变量中的命令行参数传递给run()方法。有任何想法吗?
答案 0 :(得分:0)
好的,我知道这很有趣,但在发布我的问题之后我也明白了。
对于那些使用Super cool Yii框架的人,想要做这样的事情,这就是你要做的事情。
在你的public run()方法中,只需添加以下内容:
$fd = fopen("php://stdin", "r");
$content = "";
while (!feof($fd)){
$content .= fread($fd, 1024);
}
fclose($fd);
然后您就可以获得在$ content变量中发送/流式传输到文件的任何内容。
在捕获stdin后,您将在处理此块后添加的任何代码进行处理。
C '',)
答案 1 :(得分:0)
您可以使用CConsoleCommand::promt()
接收来自标准输入的输入(此处更多信息http://www.yiiframework.com/doc/api/1.1/CConsoleCommand#prompt-detail)