Php Laravel Cron作业-控制器功能
我在/app/Http/Controllers中的laravel项目中有一个控制器。 名为transferDataController的控制器Php Laravel Cron作业-控制器功能,php,laravel,cron,scheduling,Php,Laravel,Cron,Scheduling,我在/app/Http/Controllers中的laravel项目中有一个控制器。 名为transferDataController的控制器 <?php namespace App\Http\Controllers; use DB; class TransferDataController extends Controller{ public function moveStTempSales(){ // then a lot of queries. } } 进入以下目录:
<?php
namespace App\Http\Controllers;
use DB;
class TransferDataController extends Controller{
public function moveStTempSales(){
// then a lot of queries.
}
}
进入以下目录: yourproject/app/Console/Commands 在这个文件夹create中,您可以创建一个类文件,其中包含要在cron上调用的函数 现在在同一路径上有一个文件:Kernel.php 此文件包含:
$schedule->command();
用于调用当前创建的类的函数
使用后:
php artisan schedule:run
运行该功能
是的,我明白。有没有办法把这个函数保存在我的控制器中,并在计划中调用它?@ElioChamy:我不这么认为。我在kernel.php中尝试了一个函数,然后php artisan schedule:run now working fine,thank You听起来不错:)把这个计划放在cron Job上我认为在控制器操作中放太多逻辑是不好的做法。将其移动到库类函数,然后可以从控制器和CLI命令调用相同的函数,然后从cron运行该CLI命令。我不确定L4中是否有可用的调度程序如果重构不是一个选项,您可以随时添加
curlhttp://host/TransferData/moveStTempSales
添加到您的cron任务。