1. Seçenek küresel singleton oluşturabilirsiniz: In AppServiceProvider
kullanın Bu durumda $ yıl TÜM görünümler için kullanılabilir!
<?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. Seçenek: Bu durumda bir View Composer
kullanın değişken İhtiyacınız görünümlere kullanılabilir.
Yeni oluşturulan sağlayıcıyı config/app.php
'a eklemeyi unutmayın! Eğer böyle bir Karbon örneği enjekte edebilir yıl gerekir görünümler içinde kullanın Bıçaklar @inject-method
<?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.:
@inject('carbon', 'Carbon\Carbon')
{{ $carbon->parse()->year }}
merhaba laravel yeni im. İlk seçeneği nasıl kullanabilirim. pagesController.php içinde bir şey bildirmek zorundayım çünkü "Undefined variable: year" hatası aldım. P.S laravel kullanarak im 5 – Nixxx27
Kodu, AppServiceProvider'ınıza açıklandığı gibi eklediyseniz, yapmanız gereken başka bir şey yoktur. Bu hatayı ne atıyor? – Tim
bunu kullanıyorum ..() hakkında genel işlev { dönüş yıl; } ve hata Tanımsız değişken: yıl. Kodunu kopyalayıp yapıştırdım. – Nixxx27