Php Codeigniter应用程序在CLI中返回空白输出
我正在设置我的cron作业控制器,它只在CLI中运行,我还没有开始构建任何东西,只是在CI示例的测试阶段。但是,当运行它时,我没有得到任何输出或其他任何东西,只有一行新行,这是我运行的命令:Php Codeigniter应用程序在CLI中返回空白输出,php,codeigniter,command-line-interface,Php,Codeigniter,Command Line Interface,我正在设置我的cron作业控制器,它只在CLI中运行,我还没有开始构建任何东西,只是在CI示例的测试阶段。但是,当运行它时,我没有得到任何输出或其他任何东西,只有一行新行,这是我运行的命令: root@serv$ php /var/www/ci/index.php tools message root@serv 正如您在第二行中看到的,我没有得到任何输出,只是一个运行命令的新行,但我不明白为什么,我无法调试它。该代码包含以下内容: <?php class Tools extends CI
root@serv$ php /var/www/ci/index.php tools message
root@serv
正如您在第二行中看到的,我没有得到任何输出,只是一个运行命令的新行,但我不明白为什么,我无法调试它。该代码包含以下内容:
<?php
class Tools extends CI_Controller {
public function message($to = 'World')
{
echo "Hello {$to}!".PHP_EOL;
}
}
?>
在我的配置文件中,$config['uri_protocol']
被设置为AUTO
,因此这似乎不是问题所在
我如何调试这个?我可能需要处理哪些选项
我还有
display\u errors
和error\u reporting
onE\u ALL
这可能是一个愚蠢的建议,但不妨试一试@lolwut,如果不使用“echo”,也许你必须“返回”输出呢?我想你可以在
通过使用参数controller
和function
调用cron.php,然后定义cron\u CI\u INDEX
以引用主INDEX.php
的文件路径
比如说,
php /var/www/ci/cron.php --run=/tools/message
我有一个遵循本指南的应用程序:运行(并生成输出)。当我这样做时,CI仅为1.7.2,但它可能仍然有效我发现了问题,这是一个
重定向('domain.com')的问题;退出代码>我在一个自动加载的库上,因为它与数据库中的域相匹配,这样CLI在检测时就不会为域提供服务,因此我包含了一个带有退出的重定向('domain.com')
,这就是为什么我看不到任何输出的原因。(CodeIgniter 2.2.0)
在/application/config/routes.php中添加路由
为了
<?php
class Cron extends CI_Controller
{
public function process_dumps()
{
echo "Processing dumps..." . PHP_EOL;
}
}
?>
没有这一行,CLI上就没有输出 我在为codeigniter玩w/cli时也遇到了这个问题。我花了一段时间来解决这个问题,发现我忘了在我的登录模型上除了我的控制器之外,它运行一个重定向
函数。好吧,它可以工作-我只是用一个基本的CI设置测试了它(对config.php没有更改)。@Stealthynija no,CodeIgniter的CLI语法是php index.php controller method params
@Repox这很奇怪,但我不知道我对CI配置所做的更改需要注意什么,这些更改会影响CLI应用程序。我不明白为什么它不返回任何输出?任何日志文件输出?看起来很奇怪,你什么也得不到…@landons不,没有记录任何类型的错误。不,这没有帮助-仍然是同样的效果。这也没有帮助:(我仍然没有生成输出,也没有记录。为我节省了大约4个小时的咒骂试图理解为什么,我欠你的
$route['cron/process_dumps'] = 'cron/process_dumps'