如何在 Laravel-5.4 中的所有刀片文件中使用 php 变量?
How to use a php variable in all blades files in Laravel-5.4?
如何在所有刀片页面中使用变量?
控制器
public function index1(){
$article='var-1';
return view('index',compact('article');
}
index.blade.php
{{ $article }}
Result of index.blade.php
var-1
index2.blade.php
{{ $article }}
Result of index2.blade.php
Not Found
我的问题是找到一种方法来使用一个变量并在我所有的 *.blade.php 文件中使用它。
我该如何解决这个问题?
您可以 Pass data to all views 轻松。
只需在 boot()
方法中的 AppServiceProvider.php
中添加以下内容:
View::share('key', 'value');
您可以使用视图外观的共享方法与您的应用程序呈现的所有视图共享一段数据。通常,您应该在服务提供商的 boot
方法中调用共享。您可以自由地将它们添加到 AppServiceProvider
或生成一个单独的服务提供商来容纳它们:
<?php
namespace App\Providers;
use Illuminate\Support\Facades\View;
class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
View::share('key', 'value');
}
/**
* Register the service provider.
*
* @return void
*/
public function register()
{
//
}
}
您可以创建一个 Composer 并在主视图上传递数据。
示例:
class MyComposer
{
public function compose(View $view)
{
$article='var-1';
$view->with(['article' => article]);
}
}
并在 AppServiceProvider
class 中调用 class boot()
函数,如下所示:
view()->composer('layouts.app', MyComposer::class);
layouts.app
是包含在您的视图中的主视图
如果您需要更多信息,请参阅 docs
如何在所有刀片页面中使用变量?
控制器
public function index1(){
$article='var-1';
return view('index',compact('article');
}
index.blade.php
{{ $article }}
Result of index.blade.php
var-1
index2.blade.php
{{ $article }}
Result of index2.blade.php
Not Found
我的问题是找到一种方法来使用一个变量并在我所有的 *.blade.php 文件中使用它。
我该如何解决这个问题?
您可以 Pass data to all views 轻松。
只需在 boot()
方法中的 AppServiceProvider.php
中添加以下内容:
View::share('key', 'value');
您可以使用视图外观的共享方法与您的应用程序呈现的所有视图共享一段数据。通常,您应该在服务提供商的 boot
方法中调用共享。您可以自由地将它们添加到 AppServiceProvider
或生成一个单独的服务提供商来容纳它们:
<?php
namespace App\Providers;
use Illuminate\Support\Facades\View;
class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
View::share('key', 'value');
}
/**
* Register the service provider.
*
* @return void
*/
public function register()
{
//
}
}
您可以创建一个 Composer 并在主视图上传递数据。
示例:
class MyComposer
{
public function compose(View $view)
{
$article='var-1';
$view->with(['article' => article]);
}
}
并在 AppServiceProvider
class 中调用 class boot()
函数,如下所示:
view()->composer('layouts.app', MyComposer::class);
layouts.app
是包含在您的视图中的主视图
如果您需要更多信息,请参阅 docs