Joh*_*han 5 php laravel laravel-5.1
我每 5 分钟运行一次计划任务,为此我将其添加到scheduleApp\Console\Kernel 中
$schedule->call(function(){
$this->bajarProveedores();
})->everyFiveMinutes()
->appendOutputTo(storage_path('\logs\schedule.log'));
我试过对文件路径使用反斜杠和正斜杠,我曾经file_exists(storage_path('\logs\schedule.log'))检查文件是否在那里。该方法运行没有错误,它返回一个字符串,但没有附加任何内容schedule.log,该方法看起来像这样:
私有函数 bajarProveedores()
{
尝试 {
// 在这里做一些事情
} catch (FileNotFoundException $exception) {
死('文件:'。$文件名。'错误');
}
返回'文件:'.$文件名。' 好的';
}
我检查了该文件是否存在,并且我正在使用 L5.1 在 Windows 上工作。这是正确的方法吗?
有什么建议?
小智 1
appendoutputTo() 和 sendOutputTo() 专用于命令方法,不支持 call 方法。如果您想使用这些功能,则必须使用 Command 方法。https://laravel.com/docs/5.1/scheduling#task-output
PS 我在 laravel 5.8 上,但仍然遇到这个问题,我认为它不支持调用,如果是这样,我还没有弄清楚。
| 归档时间: |
|
| 查看次数: |
1045 次 |
| 最近记录: |