在控制器的构造方法中向公共模板赋值,遇到了中文不显示的问题


laravel 版本 5.5
本来是预期在后台所有的控制器执行前,进行自己的权限验证和基本信息获取,但是在获取信息赋值到模板的时候遇到了问题:当变量的值是中文的时候,模板不能显示,当时数字字母的时候可以正常显示。

class RootController extends Controller

{

    public function __construct() {

        //权限验证


        //权限验证结束


        //当前位置

        $webSiteName='后台管理系统';

        $webName=' 公司名称 ';


        $route = app('request')->route();

        if ($route) {

            $action = app('request')->route()->getAction();

            $controller = '@';

            if (isset($action['controller'])) {

                $controller = class_basename($action['controller']);

            }

            list($routeControllerName, $routeActionName) = explode('@', $controller);

        }

        \DB::connection()->enableQueryLog();

        $users = \DB::table('authority')->select('function_name')->where('function_url','=',$routeActionName)->first();

        if($users){

            $webController=$users->function_name;

        }else{

            $webController='';

        }

        //view()->share('webName','111111');

        view()->share('webName','中哈人花大客户开具O')

    }

}


当 webName 的值是数字的时候,可以正常显示。当时它的值是中文的时候,就什么都不显示。
很奇怪,如果说在构造函数里不能给模板赋值也就算了,但是数字字母可以显示中文不能显示就不明白是为什么了。难道被过滤掉了吗?
我这个是在后台用,不是全站通用的,所以不想写在 boot 里.



Vote Vote Cancel Collect Collect Cancel

<< 上一篇: 自定义Cron调度应该怎么设置

>> 下一篇: 请问一下,Laravel有拉取邮箱中邮件的相关扩展或API吗?