通过ViewComposer和Middleware共享变量

时间:2017-12-16 08:36:36

标签: php laravel laravel-5.5 service-provider

我有一个admins数组作为变量,现在在ViewComposer中声明。但是,现在我想在中间件中使用相同的变量。放置变量的最佳方法在哪里,以便我可以通过其他文件共享它?

我的意思是ViewComposers

$admins = ['hello@example.com'];

我应该在哪里定义它,以便我可以在Middleware和ViewComposer中访问它?或者可能完全通过应用程序全球?

(如果是字符串,我会使用.env,但它不接受数组)

1 个答案:

答案 0 :(得分:2)

您可以使用configuration-values

$value = config('admins.list');// change admins and list is the key array returned

要在运行时设置配置值,请将数组传递给配置帮助程序:

config(['admins.list' => [ 'admis list' ] ]);

admins将在配置文件夹中作为admins.php

admins.php类似于

return [
   'list' => [
       'admin1',
       'admin2'
   ],
   'other settings' => true
];