laravel - Laravel 本地化日期格式(模式)
问题描述
我想设置 Laravel 和 Carbon,以便根据用户选择的当前语言环境,日期将以正确的模式格式化。我认为在所需的语言环境上设置 LC_TIME 就足够了,然后使用 Carbon 方法toDateString来获得正确的格式,但是,无论设置了 LC_TIME,它总是返回格式为 yyyy-mm-dd 的日期字符串。
预期结果:
- 如果选择意大利语,则 mm/dd/yyyy
- 如果选择英语,则 yyyy-mm-dd
- 依此类推
我正在使用 Laravel 5.5 和 Carbon 1.36.1
解决方案
Carbon::now()->isoFormat('L');
为您提供当前语言环境的当前标准数字格式日期(“it_IT”为 20/5/2020,“en_US”为 2020/5/20)。
您可以在翻译中为给定的语言环境自定义此格式:
Translator::get('en')->setTranslations([
'formats' => [
'L' => 'YYYY-MM-DD',
],
]);
推荐阅读
- c# - 如何使用正则表达式查找不同的电话数字模式
- perl - 使用 perl 脚本比较日期(以字符串格式)的正确方法
- javascript - 有效地点击一个选项 javascript
- java - 如何确保我的 Java 程序不使用 Oracle JVM?
- ios - 通过 Firebase 获取 iOS 应用的下载次数
- apache-flex - 继承的 Flex 应用程序
- docker - Openshift:创建持久卷后应用程序目录为空
- objective-c - 类别判断字符串是否为空不起作用
- java - Instant.toEpochMilli() 可以用作唯一ID吗?
- android - 我在听者单击按钮以查看详细信息时遇到问题