手记

TranslationServiceProvider.php

<?php

 

namespace Illuminate\Translation;

 

use Illuminate\Support\ServiceProvider;

// namesapce

class TranslationServiceProvider extends ServiceProvider

{// son and father

    /**

     * Indicates if loading of the provider is deferred.

     *

     * @var bool

     */

    protected $defer = true;// wether provider indicates

 

    /**

     * Register the service provider.

     *

     * @return void

     */

    public function register()

    {// register the service provider

        $this->registerLoader();//set the register Loader

 

        $this->app->singleton('translator', function ($app) {

            $loader = $app['translation.loader'];// a singleton function

 

            // When registering the translator component, we'll need to set the default

            // locale as well as the fallback locale. So, we'll grab the application

            // configuration so we can easily get both of these values from there.

            $locale = $app['config']['app.locale'];

           // When registering the translator component, we'll need to set the default

           // locale as well as the fallback locale. so, we'll grab the application

           // configuration so we can easily get both of these values from there.

 

            $trans = new Translator($loader, $locale);//get a instance

 

            $trans->setFallback($app['config']['app.fallback_locale']);// set Fall back

 

            return $trans;// return this trans

        });

    }

 

    /**

     * Register the translation line loader.

     *

     * @return void

     */

    protected function registerLoader()

    {

        $this->app->singleton('translation.loader', function ($app) {

            return new FileLoader($app['files'], $app['path.lang']);

        });// use a big wrap function

    }// register loader

 

    /**

     * Get the services provided by the provider.

     *

     * @return array

     */

    public function provides()

    {

        return ['translator', 'translation.loader'];

    }// a static return

}


0人推荐
随时随地看视频
慕课网APP