Php 如何将法语日期时间字符串转换回英语 UTC 中的等效日期时间字符串
Php how to convert a date time string in French back to its equivalent in English UTC
我的数据库中存储了这个日期时间字符串 vendredi 11 février 2022 à 20:19:56 heure normale d’Europe centrale
。
现在我正在尝试将其转换回其等效的英语 UTC 日期时间。
为了处理它,我尝试了strtotime
:
$datetime = 'vendredi 11 février 2022 à 20:19:56 heure normale d’Europe centrale';
$tsparis = strtotime($datetime . ' Europe/Paris');
var_dump($tsparis);
这表明 bool(false)
。如何将此字符串解析回时间戳。
您可以使用字符串中的 IntlDateFormatter to parse 日期并将其格式化为字符串。
在这种情况下,传递区域设置 'fr_FR' 以及日期和时间格式“完整”就足够了:
$datetime = 'vendredi 11 février 2022 à 20:19:56 heure normale d’Europe centrale';
$parser = new IntlDateFormatter(
'fr_FR',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL
);
$tsparis = $parser->parse($datetime);
var_dump($tsparis);
给予int(1644607196)
;见 online demo
这为您提供了一个标准的 Unix 时间戳,您可以使用任何您想要生成新输出的内容对其进行处理。
我的数据库中存储了这个日期时间字符串 vendredi 11 février 2022 à 20:19:56 heure normale d’Europe centrale
。
现在我正在尝试将其转换回其等效的英语 UTC 日期时间。
为了处理它,我尝试了strtotime
:
$datetime = 'vendredi 11 février 2022 à 20:19:56 heure normale d’Europe centrale';
$tsparis = strtotime($datetime . ' Europe/Paris');
var_dump($tsparis);
这表明 bool(false)
。如何将此字符串解析回时间戳。
您可以使用字符串中的 IntlDateFormatter to parse 日期并将其格式化为字符串。
在这种情况下,传递区域设置 'fr_FR' 以及日期和时间格式“完整”就足够了:
$datetime = 'vendredi 11 février 2022 à 20:19:56 heure normale d’Europe centrale';
$parser = new IntlDateFormatter(
'fr_FR',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL
);
$tsparis = $parser->parse($datetime);
var_dump($tsparis);
给予int(1644607196)
;见 online demo
这为您提供了一个标准的 Unix 时间戳,您可以使用任何您想要生成新输出的内容对其进行处理。