我需要一个 Cron 作业来执行到网站的 Scraper 并发送包含信息的电子邮件,我制作了一个 Controller 来执行此操作,但是当我设置命令来运行该文件时
php app/controllers/ScraperController.php
我收到这个错误
PHP Fatal error: Class 'BaseController' not found in /var/www/U-Scraper/app/controllers/ScraperController.php on line 2
问题是,当我设置到该 Controller 的路由时它会起作用
最佳答案
Controller 不会自己运行,它们作为 Laravel 的一个组件工作。如果您直接加载 Controller ,则不会加载 Laravel,并且就 PHP 而言,BaseController
以及 Laravel 的 Controller
类不存在。通常你的网络服务器加载 public/index.php
加载 Laravel 等等。如果这令人困惑,您可能想了解 Composer 自动加载的工作原理:http://net.tutsplus.com/tutorials/php/easy-package-management-with-composer/
你应该做的是write an Artisan command这就是你需要的,并使用 cron 调用该命令。这个问题详细说明了如何完成此任务:Cron Job in Laravel
关于php - Laravel 4 中的 Cron 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19150107/