请注意Yaf版本,测试3.2.5版在cli模式下Yaf_Request_Simple无法设置$params
//php yaf.php test/test/test aaa bbb #aaa,bbb是参数
$application = new Yaf_Application( APPLICATION_PATH . "/conf/application.ini");
if(php_sapi_name()=="cli"){
//加载cli的bootstrap配置内容
$application->bootstrap();
$uri_r = explode('/',$argv[1]);
if($uri_r[2]){
}elseif($uri_r[1]){
array_unshift($uri_r,'index');
}else{
exit('uri error!');
}
list($module,$controller,$action) = $uri_r;
$params = array_slice($argv,2);
//改造请求
$Request = new Yaf_Request_Simple('CLI',$module,$controller,$action,$params);
//启动
$application->getDispatcher()->dispatch($Request);
}else{
$application->bootstrap()->run();
}
在调用方法中使用$this->getRequest()->getParams()获取参数
本文档探讨了在Yaf 3.2.5版本中遇到的CLI模式下无法设置Yaf_Request_Simple参数的问题。通过分析PHP代码,展示了如何在命令行接口环境下正确构造和启动Yaf请求,以及如何在调用方法中获取请求参数。对于使用Yaf框架进行CLI应用开发的程序员来说,这是一个关键的解决步骤。
7918

被折叠的 条评论
为什么被折叠?



