编程语言
首页 > 编程语言> > php-Laravel 4.2照亮外观未得到解决

php-Laravel 4.2照亮外观未得到解决

作者:互联网

我通过以下链接创建了一个artisan命令来清除应用程序缓存

http://code.tutsplus.com/tutorials/your-one-stop-guide-to-laravel-commands–net-30349

我正在尝试在我的仪表板控制器中调用它,如下所示

namespace ABC;

class DashboardController extends \BaseController {

    /**
     * Display a listing of the resource.
     *
     * @return Response
     */
    var $viewContent = [];

    public function index() {
        //Method one
        \Artisan::call('command:clearCache');

        //Method two
        $console=new \Illuminate\Console\Application;
        $console->call('command:clearCache');
        //Other function goes here

    }
 }

我收到了以上代码的异常(上面代码中的方法一):

Call to undefined method Illuminate\Support\Facades\Artisan::call()
Which means facades are not resolving to service providers.

对于方法二,我得到以下异常

There are no commands defined in the “command” namespace.

我尝试使用xdebug调试2个不同的外观(在Artisan不能正确解析的情况下,一个(应用程序外观)已解决).

我对门面及其工作原理知之甚少,但它们来自laravel框架,因此帮助较少.

编辑
config / app.php中的提供程序数组的前两行

'providers' => array(
        'Illuminate\Foundation\Providers\ArtisanServiceProvider',

config / app.php中的别名的前三行

 'aliases' => array(
        'App' => 'Illuminate\Support\Facades\App',
        'Artisan' => 'Illuminate\Support\Facades\Artisan',

解决方法:

这样尝试

\Artisan::call('clearCache');

您可以将任何参数作为第二个参数传递

Artisan::call('clearCache', array('--paramname' => 'value'));

标签:laravel,laravel-4,laravel-facade,php
来源: https://codeday.me/bug/20191120/2046480.html