转换/显示日期的最佳方式


Best way to convert/show a date

我有一个 php 表单,它要求用户输入日期。我有三个复选框可供他们选择:"今天"、"明天"和"其他"(其中其他要求他们在字段中输入特定日期。

我希望"今天"打印出当天,"明天"打印出明天的日期

/日期,"其他"打印出他们选择的日期。格式应为"日、月日期"(7 月 8 日星期五)。

对于今天的日期非常简单,只需使用 getdate() 数组,但是有没有一种简单的方法来获取明天的日期(不需要多个步骤/错误检查)?有没有一种简单的方法来转换输出(以及星期几是否存储在 type=date 的输出中)?

您可以使用 strtotime。

明天: <? $tomorrow = strotime("+1 day"); ?>

对于任何日期,您需要解析它,使用 strotime($date_input); ,但请注意,PHP 会尝试找出日期格式,用斜杠分隔的日期是美国标准 (M/D/Y),用破折号分隔的日期是国际标准 (D-M-Y)。

对于工作日,它是日期函数的参数(l)。因此,要以您想要的格式打印:

echo date('l, F d', strtotime($date));
date('l F', d', strtotime(' +1 day'));

DateTime类接受多种类型的日期输入,例如:

$string = "today" or "tomorrow" or "1 day" or "10 years"
$date = new DateTime($string);

然后,您可以根据需要设置日期格式:

$formattedDate = $date->format('l, F jS');

这会将日期格式设置为:Friday, July 8th

有关可能格式的完整列表,请参阅 http://php.net/manual/en/function.date.php。