php - 如何将数据从 cron 传递到 Controller laravel php

标签 php mysql laravel cron

如何将数据从 cron(sheduler) 传输到在 Laravel 中生成 json 的 Controller 这是我的路线:

Route::get("/data",'DataController@Data');

这是我的函数 Controller 中的数据:

    public function Data(){
    return response()->json(['data'-> User::all()],200);
}

我如何制作 cron 来为用户查询 mysql,保存在变量中并传递给我的 Controller ?

更新: 我尝试使用缓存: 在我的命令中(将由 crontab 运行)

    public function handle()
{
    $data = User::All();
    Log::info('Data: ' . $data);
    Cache::put('data',$data);
    Log::info('Done!');
    Log::info('Data: ' . Cache::get('data'));
}

问题是,First info() printf 我得到了很好的数据,但是当我尝试从缓存中获取数据时,我没有想到,我尝试将数据存储到文件中 CACHE_DRIVER=文件(来自 .env) 我在windows上运行页面,存储文件夹有创建文件的权限

最佳答案

你想做的事情根本没有意义。调度程序通过 CLI 界面运行,与 Controller 无关。

我强烈建议您不要混合使用调度程序和 Controller ,而是为可能需要重用的方法创建帮助程序类。

如果您无论如何都想运行 Controller ,可以使用以下命令来运行它:

(new App\Http\Controllers\DataController())->Data()

免责声明:当您在正常请求生命周期之外调用 Controller 时,我不完全确定响应和请求类的行为。

关于php - 如何将数据从 cron 传递到 Controller laravel php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43826103/

相关文章:

php - 删除和重新索引数组时遇到问题

php - 如何使用 PHP 从其他主机连接 MySQL 数据库

mysql - Docker MySQL 错误 1049 (42000) : Unknown database 'users'

MySQL从多个表中减去相同ID的总和

php - @(或 "at sign")提前结束我的 MySQL 查询,导致错误

php - 即使在恢复到原始设置后更改数据库设置现在也有错误(Laravel 5)

php - jquery 多选选中的数据顺序

php - SQL将2列分成多行然后全部加起来

php - 为 PHP 数组中的每个对象添加属性

php - 在 Laravel 5.4 中自定义忘记密码的电子邮件