1

我创建了一个\App\Providers\HelperServiceProvider.php使用以下内容调用的服务提供者:

<?php namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Session;
use View;

class HelperServiceProvider extends ServiceProvider {

    /**
     * Bootstrap the application services.
     *
     * @return void
     */
    public function boot()
    {
    }

    /**
     * Register the application services.
     *
     * @return void
     */
    public function register()
    {
        foreach (glob(app_path().'/Helpers/*.php') as $filename){
            require_once($filename);
        }
    }

}

并且还包含providers\config\app.php

这工作得很好,直到最近我想为不同的目的添加一个新的提供程序。所以我创建了一个新的App\Providers\ComposerServiceProvider.php

<?php namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Session;
use View;

class ComposerServiceProvider extends ServiceProvider {

    /**
     * Bootstrap the application services.
     *
     * @return void
     */
    public function boot()
    {
        # This content doesn't really matter. It still doesn't work even if I remove it.
        # View composer for partials.alert
        # Some code
    }

    /**
     * Register the application services.
     *
     * @return void
     */
    public function register()
    {
    }

}

并且也包含在配置中,所以它看起来像这样:

<?php   
        /* ^Some other things
         *
         * Application Service Providers...
         */
        'App\Providers\AppServiceProvider',
        'App\Providers\BusServiceProvider',
        'App\Providers\ConfigServiceProvider',
        'App\Providers\EventServiceProvider',
        'App\Providers\RouteServiceProvider',
        'App\Providers\HelperServiceProvider',
        'App\Providers\ComposerServiceProvider',

但它作为内部服务器错误出现。当我从提供者配置中取出时,它工作正常。我已经尝试了我能想到的一切。我尝试删除 boot() 中的所有内容,更改提供程序的顺序,重命名提供程序,但它们都不起作用。由于其他技术原因,我无法访问 php/apache 日志文件。我错过了这个实现有什么问题吗?

4

0 回答 0