getPattern返回一个错误的模式



我用IntlDateFormatter格式化DateTime (CarbonCarbon)日期。但是,该模式并不是在每种情况下都与格式化日期匹配。我注意到在德语设置中:

$datetime = DateTime::createFromFormat('Y-m-d', '2016-06-27');
$locale = 'de';
$timezone = 'Europe/Berlin';
$datetype = IntlDateFormatter::MEDIUM;
$timetype = IntlDateFormatter::NONE;
$intlDateFormatter = new IntlDateFormatter($locale, $datetype, $timetype, $timezone);
$pattern = $intlDateFormatter->getPattern();
$date = $intlDateFormatter->format($datetime);

$date正确返回27.06.2016。但是$pattern返回dd.MM.y。这是怎么了?

好的,我刚刚发现返回的模式不是php而是CLDR模式。这里描述了这些日期模式。
下一步:寻找将CLDR模式转换为php模式的最佳方法。

相关内容

  • 没有找到相关文章

最新更新