나는/app/Http/컨트롤러에서 laravel 프로젝트의 컨트롤러를 사용하고 있습니다. 컨트롤러가 transferDataController를 호출했습니다.Laravel Cron 작업 - 컨트롤러 기능
<?php
namespace App\Http\Controllers;
use DB;
class TransferDataController extends Controller{
public function moveStTempSales(){
// then a lot of queries.
}
}
이 함수는 15 분마다 호출해야합니다. 단추 또는 일부 요소에 URL을 사용하여 API 호출하지 않고. Laravel Schedule에 대해 읽었습니다. Laravel 4에서 작동합니까? 그리고 그렇다면 어떻게하면이 기능을 내 경우에 예약 할 수 있습니까? 서버 크론 작업에 대한 지식이 있습니다. 당신이 크론에서 호출 할 수있는 기능을 포함하는 클래스 파일을 생성 할 수 있습니다 생성이 폴더에서
프로젝트 _/응용 프로그램/콘솔/명령
:
나는 컨트롤러 액션에 너무 많은 로직을 넣어 나쁜 습관이다라고 말하고 싶지만. 이를 라이브러리 클래스 함수로 옮긴 다음 컨트롤러와 CLI 명령에서 동일한 함수를 호출 한 다음 cron에서 해당 CLI 명령을 실행할 수 있습니다. 스케줄러가 L4에서 사용 가능한지 잘 모르겠습니다. – apokryfos
리팩토링이 옵션이 아니라면 항상 'curl http : // host/TransferData/moveStTempSales'를 cron 작업에 추가 할 수 있습니다. – apokryfos