2015-09-13 21 views
7

laravel 5 Karbon:I laravel aynı küresel yerel ayarlamak çalışıyorum küresel Yerel

config('app.locale') 

Karbon ile çalışmak.

Size kullanarak bunu yapabilirsiniz gibi görünüyor ya:

Carbon::setLocale('fr') 

veya

setlocale(LC_TIME, 'theLocale'); 

yüzden ara katman veya sağlayıcılarını kullanarak çalıştı ama başarılı olamadı var.

(neden laravel bu açıdan varsayılan özelliği nedir?)

+0

Sorun/sorun neydi? Herhangi bir hata aldın mı, yoksa işe yaramıyor mu? Hata ayıklamada neler yaptınız? getLocale, config ve böylece çıkışa dökün? – Gummibeer

cevap

6

Yani bu benim kötü, Karbon aslında

Carbon::setLocale('fr') 

yöntem sadece php

setlocale(); 

kullanıyor ise

metodu. OS saklanan yerel ayara php setlocale() referans Eğer

->formatLocalized() 
kullanmak zorunda,

ikincisi, konsolda yüklü bir kullanım

locale -a 

birini seçmek için bu Bildirim yerine

->format() 
arasında

yöntemi

->toDateString() 
->toFormattedDateString() 
->toTimeString() 
->toDateTimeString() 
->toDayDateTimeString() 

lokalize edilmiyor

ve son gibi 10 yöntemi

ve son olarak tüm yararlı yöntemleri bu ayrıştırma harfleri

http://php.net/manual/en/function.strftime.php

6

ben bunu yapılandırılmış kullanmak zorunda AppServiceProvider.

class AppServiceProvider extends ServiceProvider 
{ 
    public function boot() 
    { 
     // Localization Carbon 

     \Carbon\Carbon::setLocale(config('app.locale')); 
    } 
}