Laravel 语言翻译未在第一条路线加载

Laravel Language Translation Not loading at first route

我一直在本地化项目中工作,在我的应用程序中,语言翻译文件没有加载 pages.I 不知道我的 loadPath 功能有什么问题。 在我的应用程序中,用户可以更改配置文件部分的语言,并且更改在相同的地方完美运行 session.But 当用户注销并首先登录到应用程序时,用户没有看到 his/her 首选语言。

这是我的代码

protected function loadPath($path, $locale, $group)
{

    if ( App::runningInConsole() ) {
        return parent::loadPath( $path, $locale, $group );
    }

    $domain  =  get_subdomain();
    $dir  =  "lang/{$locale}/{$domain}";
    $key  =  $dir.'/'.$group.'.php';


    if(\Session::has($key)){
        $results = \Session::get($key);
        $d = json_encode($results);

        view::share('lang',$d);
        return $results;

    }else{

        $this->s3 = App::make('aws')->factory(tenent_aws_config())->get('s3');

        $domain = get_subdomain();
        $bucket = "localbulkload";
        $dir = "lang/{$locale}/{$domain}";

        $langList = $this->s3->getIterator('ListObjects',[
            "Bucket"    => $bucket,
            'Prefix' => "lang/$locale/{$domain}"
        ]);

        foreach ($langList as $langObject){
            $object = $this->s3->getObject([
                "Bucket" => $bucket,
                "Key" => $langObject['Key']
            ]);
            $key = $langObject['Key'];
            $string = ($object['Body']);
            $results = eval("?>$string");
            \Session::put($key,$results,60);
        }

        $info = $this->s3->doesObjectExist(
            $bucket,
            $dir . "/" . $group . ".php");
        if ($info === false) {

            if($this->files->exists($full = "{$path}/template/{$group}.php")) {

                $results = $this->files->getRequire($full);
                $d = json_encode($results);
                view::share('lang',$d);
                return $results;
            }
            else{
                $this->files->exists($full = "{$path}/en/{$group}.php");
                $results = $this->files->getRequire($full);
                $d = json_encode($results);
                view::share('lang',$d);

                return $results;
            }

        }
    }

    return array();
}

我该如何解决这个问题?

我发现我的函数加载了一些不需要的语言文件,我删除了它们并按需加载文件only.Now它的工作perfectly.Here是我的工作代码

protected function loadPath($path, $locale, $group)
{
    if (App::runningInConsole()) {
        return parent::loadPath($path, $locale, $group);
    }


    $domain  =  get_subdomain();
    $dir  =  "lang/{$locale}/{$domain}";
    $key  =  $dir.'/'.$group.'.php';

    if(\Session::has($key)){
        $results = \Session::get($key);
        $d = json_encode($results);
        view::share('lang',$d);
        return $results;

    }else{

        $this->s3 = App::make('aws')->factory(tenent_aws_config())->get('s3');

        $domain = get_subdomain();
        $bucket = "localbulkload";
        $dir = "lang/{$locale}/{$domain}";

        $info = $this->s3->doesObjectExist(
            $bucket,
            $dir . "/" . $group . ".php");

        if($info ){
            $object = $this->s3->getObject([
                "Bucket" => $bucket,
                "Key" => $dir . "/" . $group . ".php"
            ]);
            $key = $object['Key'];
            $string = ($object['Body']);
            $results = eval("?>$string");

            \Session::put($key,$string);
            $d = json_encode($results);
            view::share('lang',$d);
            return $results;
        }
        else{

            if($this->files->exists($full = "{$path}/template/{$group}.php")) {

                $results = $this->files->getRequire($full);
                $d = json_encode($results);
                view::share('lang',$d);
                return $results;
            }
            else{
                $this->files->exists($full = "{$path}/en/{$group}.php");
                $results = $this->files->getRequire($full);
                $d = json_encode($results);
                view::share('lang',$d);
                return $results;
            }

        }
    }

    return array();
}