1. Option: Use the AppServiceProvider
在这种情况下,所有视图都可以使用$year!
<?php
namespace App\Providers;
use Carbon;
class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
view()->share('year', Carbon::parse()->year);
}
/**
* Register the service provider.
*
* @return void
*/
public function register()
{
//
}
}
2. Option: Use a 100
在这种情况下,该变量仅适用于需要它的视图.
不要忘记将新创建的提供者添加到config/app.php
!
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Carbon;
class ComposerServiceProvider extends ServiceProvider
{
/**
* Register bindings in the container.
*
* @return void
*/
public function boot()
{
// Using Closure based composers...
view()->composer('pages.*', function ($view) {
$view->with('year', Carbon::parse()->year);
});
}
/**
* Register the service provider.
*
* @return void
*/
public function register()
{
//
}
}
3. Use Blades 100
在需要这一年的视图中,你可以注入这样一个Carbon 实例:
@inject('carbon', 'Carbon\Carbon')
{{ $carbon->parse()->year }}