我来自印度尼西亚,我希望用印尼语格式显示日期,但我得到的是英语格式。
示例格式 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 :(得分:2)
查看服务器中是否安装了区域设置。
您可以通过发出命令
列出服务器中的所有语言环境 <强> locale -a
强>
安装您的语言区域。通过发出命令,我相信印度尼西亚语语言环境是 id_ID
。语言环境列表是从此答案https://stackoverflow.com/a/28357857/5808894
<强> sudo locale-gen id_ID
强>
<强> sudo update-locale
强>
使用方法setlocale
设置区域设置 <强> setlocale(LC_TIME, 'id_ID');
强>
<强> 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
答案 1 :(得分:1)
$dateName = Carbon::now()->locale('id')->isoFormat('LL'); //return 17 Mei 2020
$dateName = Carbon::now()->locale('id')->isoFormat('LLLL'); //return Minggu, 17 Mei 2020 pukul 10.21
尝试使用此代码 您可以检查https://carbon.nesbot.com/docs/#api-localization
答案 2 :(得分:0)
Laravel Eloquent允许您从模型进行格式化,以便您可以
$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
答案 3 :(得分:0)
您不能依赖服务器的语言环境,因为大多数应用程序都以自己的语言环境格式在自己的设备上运行。您可以为自己的设备安装语言环境格式,但不能为其他设备安装语言环境格式,因为它们具有其语言环境时区。
使用其他方法,例如:
{{ date('d-m-y', strtotime($example->start_date))}}
上面的代码将更改
yyyy-mm-dd
格式化为
d-m-y
2019-05-01至01-05-19
或
{{ date('l, d-m-y', strtotime($example->start_date))}}
输出:
2019年1月5日星期五
希望有帮助。