php – 在Laravel中为日期配置荷兰语格式

php – 在Laravel中为日期配置荷兰语格式,第1张

概述在我的Laravel应用程序中想要以荷兰语格式显示日期.在我的config / app.php文件中,我设置了我的时区和语言环境: 'timezone' => 'Europe/Amsterdam','locale' => 'nl', 但是,如果我在我的刀片文件中打印日期,如下所示: strftime('%a %e %b', strtotime($day->date)) 它仍未以荷兰语格式显示.当 在我的Laravel应用程序中想要以荷兰语格式显示日期.在我的config / app.PHP文件中,我设置了我的时区和语言环境:

'timezone' => 'Europe/Amsterdam','locale' => 'nl',

但是,如果我在我的刀片文件中打印日期,如下所示:

strftime('%a %e %b',strtotime($day->date))

它仍未以荷兰语格式显示.当我在相关控制器的构造函数中调用setlocale()方法时,它可以工作.

setlocale(LC_TIME,'NL_nl');

如何在全局设置或在我的配置中定义它?

解决方法 警告:

据我所知,你通过改变laravel框架的默认配置走错了方向.正如惯例所说,除非您的应用程序是针对特定国家/地区而不是针对整个世界,否则您不应更改/编辑默认值.

Read more about not changing the default configurations(论坛帖子仅与时区相关,但适用于一般情况)

回答

你为什么不使用Carbon?

将时间存储为laravel将照常执行的 *** 作,然后在刀片/控制器中更改时区和区域设置并显示它.

方法1:

这是你需要做的:

在控制器中导入Carbon命名空间

use Carbon\Carbon;

然后在你的方法中:

public function yourMethodname(){    // replace getDateAndTimeValueFromDB() with whatever    // you are using or whatever your logic is...    $dt = getDateAndTimeValueFromDB();    Carbon::setLocale('nl');    $newDt = Carbon::parse($dt)->timezone('Europe/Amsterdam');    return vIEw('path.to.your_vIEw_file',compact('newDt'));}

然后在您的视图文件中,在您想要的任何位置添加以下内容.

{{ $newDt }}

应该这样做.

方法2:

我不建议你使用这个 – 下面提到的方法 – 因为你将把刀片和PHP混合在一起,这是非常不推荐的,因为这将导致你的代码和你的应用程序设计不好,即使你会得到正确的输出.

您可以直接在刀片文件中使用Carbon实例.
只需在vIEw.blade.file中添加以下代码段即可

<?PHPCarbon\Carbon::setLocale('nl');$dt = getDateAndTimeValueFromDB();$newDt = Carbon\Carbon::parse($dt)->timezone('Europe/Amsterdam');?>

然后在文件中的任何位置回显转换日期.

{{ $newDt }}

希望这可以帮助你.快乐的编码.干杯.

总结

以上是内存溢出为你收集整理的php – 在Laravel中为日期配置荷兰语格式全部内容,希望文章能够帮你解决php – 在Laravel中为日期配置荷兰语格式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1256398.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存