DatePeriod未设置时区

时间:2018-11-23 11:19:51

标签: php date timezone

我正在创建DatePeriod,并且想用法语显示月份和日期的名称:

$timeZoneParis = new DateTimeZone('Europe/Paris');
$dateDebutCalendrier = new DateTime('2018-11-01', $timeZoneParis);
$dateFinCalendrier = new DateTime('2018-11-31', $timeZoneParis);
$period = new DatePeriod($dateDebutCalendrier,new DateInterval('P1D'),$dateFinCalendrier);

预期结果:

  

Janvier,Fevrier ...

实际结果:

  

一月,二月...

1 个答案:

答案 0 :(得分:0)

感谢评论,这是解决方案:

setlocale(LC_TIME, 'fr_FR','fra');
echo(strftime("%B", $dateDebutCalendrier->getTimestamp());

小型编辑:我还需要在时间戳上添加(3 * 3600),以获取该期间的正确第一天。