更改日期格式Laravel

问题描述:

我来自印度尼西亚,我想用印尼语言格式显示日期,但是我得到的是英语语言格式。更改日期格式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如何做到这一点,例如?? –

  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? –

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进一步的细节