问题描述
我想在数据库中保存日期。我使用 Persian_datepicker 包选择日期,还使用 Jalali 日历转换为公历日期。但是我得到了错误:
错误:
未定义的索引年
代码:
pdate = "۱۴۰۰/۰۳/۲۹";
\Morilog\Jalali\Jalalian::fromFormat('Y/m/d',$pdate)->toCarbon();
解决方法
您应该将波斯日期转换为英文格式,然后再转换为公历。
۱۴۰۰-۰۳-۲۹(波斯语格式)-> 1400-03-29(英文格式)-> 2021-06-19(格里高利语)
我使用了 Jalali 包中的 CalendarUtils
类。假设 $date
是“۱۴۰۰-۰۳-۲۹”。
代码:
public function jalaliToCarbon($date)
{
$date = CalendarUtils::convertNumbers($date,true);
$latin_date = CalendarUtils::createCarbonFromFormat('Y-m-d',$date)->format('Y-m-d');
return $latin_date;
}