1

我通读了有关 strtotime 和 strftime 以及相关功能的手册,但在尝试解决我的问题方面似乎没有任何进展。

基本上,我对以本地语言(在本例中为荷兰语)打印 $deldate5 输出的方法很感兴趣。

$deldate5 = date("d.m.Y., l", strtotime("today + 5 day", time()));

我很可能需要放弃 strtotime 字符串并将其替换为其他内容,以方便“今天 + 5 天”参数。

任何人都可以帮忙吗?先感谢您。

4

2 回答 2

4

让我们把它分开:

$deldate5 = date("d.m.Y., l", strtotime("today + 5 day", time()));

这是在做两件事:

  1. strtotime:创建一个 UNIX 时间戳(自纪元以来的秒数)。
  2. date: 格式化输出。

您的问题与输出(2.)有关,而不是创建时间戳(1.)。所以让我们把它分开:

$timestamp = strtotime("today + 5 day", time());
$formatted = date("d.m.Y., l", $timestamp);

现在唯一需要做的就是处理以下代码行:

$formatted = date("d.m.Y., l", $timestamp);

dateDocs函数的格式化参数为:

d - Day of the month, 2 digits with leading zeros
m - Numeric representation of a month, with leading zeros
Y - A full numeric representation of a year, 4 digits
l - A full textual representation of the day of the week

由于l(小写 L)在您的输出中需要一个语言环境,让我们看看strftimeDocs必须提供哪些格式参数是相似的:

%A - A full textual representation of the day.

date因此,从 更改为只是一小步strftime

$formatted = strftime("%d.%m.%Y., %A", $timestamp);

希望这可以帮助。

于 2011-09-28T13:52:39.150 回答
0

尝试将日期默认时区设置为您的本地时区:

http://www.php.net/manual/en/function.date-default-timezone-set.php

于 2011-09-28T11:54:13.313 回答