0

我将此日期时间作为字符串:Thu, 16 Aug 2012 13:17:25 +0200

我想重新格式化它,使它变成 Donnerstag, 16.08.2012 13:17:25(德语格式)。我尝试了格式功能,但它引发了错误。我怎样才能做到这一点?

4

2 回答 2

0
date('format', strtotime('Thu, 16 Aug 2012 13:17:25 +0200'));

或者

$date = new DateTime('Thu, 16 Aug 2012 13:17:25 +0200');
$date->format('formatstring');
于 2012-09-07T08:18:18.770 回答
0

您需要检查 setlocale 函数的使用情况,详见http://php.net/manual/en/function.setlocale.php

您需要安装语言环境,如果此代码不起作用(例如,一切都相同),您的系统上缺少它们并且需要首先对其进行排序:

setlocale(LC_TIME, "C");
echo strftime("%c") . PHP_EOL;
setlocale(LC_TIME, 'be_NL');
echo strftime("%c") . PHP_EOL;
setlocale(LC_TIME, 'de_DE');
echo strftime("%c") . PHP_EOL;

strftime 是支持使用语言环境的函数,例如负责以选择的语言输出。一些与日期相关的功能不支持这一点,但是当您在 php.net 上查看这些功能时,如果适用,将提及语言环境支持。

于 2012-09-11T10:48:37.657 回答