Date Laravel:用我的语言(意大利语)重复设置日期格式的最佳方法
一般来说,我对Laravel和OOP都是新手,试图从旧的过程代码中切换。出于可读性原因,我想用我的语言(意大利语)展示一些来自模型的日期:到目前为止,我就是这么做的:Date Laravel:用我的语言(意大利语)重复设置日期格式的最佳方法,date,laravel,localization,Date,Laravel,Localization,一般来说,我对Laravel和OOP都是新手,试图从旧的过程代码中切换。出于可读性原因,我想用我的语言(意大利语)展示一些来自模型的日期:到目前为止,我就是这么做的: 在config/app.php文件中更改'locale'=>'it' putsetlocale(LC_TIME,config('app.locale')在routes.php文件中,另请参见我的 putprotected$dates=[“发布日期”,“过期日期]在我的模型中利用碳 将{{utf8_encode($record->p
config/app.php
文件中更改'locale'=>'it'
setlocale(LC_TIME,config('app.locale')
在routes.php文件中,另请参见我的protected$dates=[“发布日期”,“过期日期]代码>在我的模型中利用碳
{{utf8_encode($record->published_at->formatLocalized('%A%d%B%Y'))}
放在我的刀片视图中utf8_encode()
,否则带有重音字母(lunedì、martedì等)的日期不会出现:不知道为什么,在谷歌上找不到答案……这是有原因的吗?是Laravel还是碳虫?)
我的问题是关于最后一点:写那么长
{{ utf8_encode($record->published_at->formatLocalized('%A %d %B %Y')) }}
每次编写一段代码都很乏味,而且编写起来会更快(并且可以重用)
(请注意,我需要在多个模型上使用它,因此我想我必须避免访问器,以获得更通用的方法)
实现这一目标的最佳方式是什么?我读过关于自定义助手函数的文章,这是一个好方法吗?正如我所说的,我对Laravel是个新手,从过程代码转换过来,并尝试使用最佳实践,所以很抱歉这个愚蠢的问题
谢谢虽然你应该(我强烈建议你)打开一个bug来修复这个问题,但是你可以很容易地扩展这个类并使用它
例如
use Carbon\Carbon;
class MyCarbon extends Carbon
{
public function formatItalian($format)
{
return utf8_encode($this->formatLocalized($format))
}
}
请记住,这不是经过测试的,编写它只是为了给您一个提示。谢谢,我打开了一个bug,但是,因为似乎只有我一个人有问题,他们说这取决于我的配置(我使用的是IIS而不是Apache),但他们不能说在哪里。。。
use Carbon\Carbon;
class MyCarbon extends Carbon
{
public function formatItalian($format)
{
return utf8_encode($this->formatLocalized($format))
}
}