2017-04-04 102 views
1

我來自印度尼西亞,我想用印尼語言格式顯示日期,但是我得到的是英語語言格式。更改日期格式Laravel

例格式爲2017年3月23日(英文)

我想這樣一個23 Maret 2017年(印度尼西亞)所以我的問題是語言。

你能告訴我一些想法嗎?這是我的示例代碼

<?php echo date("d F Y", strtotime($row->tanggal_pelaksanaan)); ?> 

Tgl: @foreach ($tindak as $tindakan) 
    {{ date("d F Y", strtotime($tindakan->target_verifikasi)) }} 
    @endforeach 

請您幫幫我。謝謝。

+0

你可以使用的strftime ()函數與正確的語言環境。 –

+2

使用碳庫。 – Gaurav

+0

@Autista_z如何做到這一點,例如?? –

回答

2
  1. 查看您的服務器是否安裝了語言環境。

    您可以通過發出命令

    locale -a

  2. 安裝您的區域列出您的服務器中的所有區域。印尼語區域,我相信是id_ID通過發出命令。使用方法setlocale

    setlocale(LC_TIME, 'id_ID');

  3. 從這個答案 https://stackoverflow.com/a/28357857/5808894

    sudo locale-gen id_ID

    sudo update-locale

  4. 設置的地點獲得語言環境的列表

  5. 要麼使用Carbonstrftime輸出本地化的日期

    strftime("%a %d %b %Y", strtotime(date('Y-m-d')))

    OR

    Carbon\Carbon::parse('23-03-2017 11:23:45')->formatLocalized('%A %d %B %Y');

    輸出Kamis 23 Maret 2017

+0

如果我使用Windows,那麼我該怎麼辦?我應該在哪裏放置setlcoale兄弟? –

+0

setlocale是一個PHP函數。你的意思是如何在Windows中安裝區域設置? – linktoahref

+0

在步驟1和2它使用sudo ..所以我應該使用CMD? –

0

Laravel口才讓你從模型格式,所以你可以做

$model->created_at->format('Y-m-d') 

要做到這一點,你應該添加

$protected $dates = [ 
    'created_at', 
    'updated_at', 
    // add other column names here that you want as Carbon Date 
]; 

那麼這會產生變異的列是一個容易操作的日期對象

看到https://laravel.com/docs/5.4/eloquent-mutators#date-mutators進一步的細節