我在用碳laravel时遇到问题。
Carbon :: now()可以,但是我需要使用此代码-> isoFormat('d MMM Y')将日期转换为用户友好格式“ 2019年11月6日”。
但是转换后的返回值具有不同的日期(天)。
为什么?有什么不好?
更新:以及我如何在laravel项目的多语言站点中使用它?
示例:用户EN具有2019年11月6日用户CS具有6个lis 2019 //捷克
-> isoFormat('d MMM Y')//日期不好,但在cs中写“ 6 lis 2019”-> format('d M Y')//日期好,但在cs lang中使用英语“ 2019年11月6日“
<?php
use Carbon\Carbon;
$datetime = Carbon::now();
$newdate = $datetime->isoFormat(' d MMM Y ');
echo $datetime; // show 2019-11-06 13:35:49
echo $newdate; // show 3 nov 2019
?>
$newdate = $datetime->format('d M Y');
如何
输出为06 Nov 2019
碳只是扩展DateTime的类。使用DateTime! https://www.php.net/manual/en/class.datetime.php
[当您使用echo $datetime
时,显然在Carbon中有一个__toString()
函数,从外观上看,它默认为标准的Y-m-d H:i:s
格式。
除了您的格式,其他都没有问题。
<?php
$datetime = new DateTime();
$newdate = $datetime->format(' d M Y ');
echo $datetime->format('Y-m-d H:i:s'); // shows 2019-11-06 13:35:49
echo $newdate; // shows 6 Nov 2019
以及如何在laravel项目的多语言站点中使用它的任何想法?
示例:用户EN在2019年11月6日用户CS有6 lis 2019 // czech
-> isoFormat('d MMM Y')//日期错误,但在CS中输入“ 6 lis 2019”-> format('d M Y')//的日期很好,但是在cs lang中使用英语“ 2019年11月6日”
您也可以如下使用碳Carbon::createFromFormat
:
$formated_date = Carbon::createFromFormat('d M Y', Carbon::now());
echo $formated_date;