Laravel如何将变量从php文件返回到刀片模板

时间:2017-11-24 07:25:28

标签: php laravel localization

我创建了一个文件localization.php,我定义了一些变量,如:

localization.php

 <?php

 $color = 'red';
 $background = 'orange';

 ?>

现在我在所有刀片模板中都包含了localization.php文件,如:

@include('localization') 

在模板中我想回应我在localiztion.php中提到的变量

 {{$color}} //when i use this it show error 'undefined variable'
你们可以帮我解决这个问题

2 个答案:

答案 0 :(得分:0)

&#34;我想在所有视图中使用这个本地化文件我有一些基因变量,我希望将其包含在所有刀片模板中#34;

执行此操作的最佳方法是将其置于常量上。在目录config>>constants.php

<?php 

return
[
'ToBeReturn' => [
     'color' => 'red',
     'background' => 'orange']
];

然后在你的控制器上你可以退货

 public function index() 
    {
        return view('index')
                   ->with('color',config('constants.ToBeReturn.color')
                   ->with('background',config('constants.ToBeReturn.background'));
    }

现在在您的视图中,您可以将其视为

{{ $color }}
{{ $background }}

做一个

php artisan config:cache

这是MVC laravel遵循的标准。将变量放在视图中并不好。所以既然你想要一个localize变量,就把它放在常量上。

答案 1 :(得分:0)

我试过这个并且有效

View::share(with([
'color' => 'red',
'background' => 'orange'
]));

它可以工作,但不幸的是它只允许添加路由文件。