使用php

时间:2017-08-26 07:13:33

标签: php date

这不是一个重复的问题。我使用php date函数来格式化日期。

我的date值为:close_date:08/25/2017

这是php函数:$close_date = date('Y-m-d', strtotime($close_date));

打印close_date,结果为:2017-08-26

我的时区是:-5:00且服务器位于UTC,因此在格式化日期时,日期会转换为utc日期?

所以date只是根据设置timezone格式化日期或转换日期?

帮我解决这个问题。

我不想将我的日期转换为任何时区日期,我只想更改日期格式。

我的输入是: 08/25/2017

预期产出为: 2017-08-25

2 个答案:

答案 0 :(得分:2)

您可能希望使用DateTime从所需格式创建日期对象,并将其转换为您需要的格式。

var x = document.getElementById("XgP7Wrq-1503732157576");
x.style.color = "#00FF00";

答案 1 :(得分:1)

如果您不想使用PHP date 功能,他们会尝试使用DateTime::createFromFormat或编写一些手动代码来爆炸$close_date和以你想要的方式使用它。

第一种方法:

使用DateTime::createFromFormat。这将帮助您根据指定的格式解析时间字符串。

$close_date = DateTime::createFromFormat("m/d/Y", $close_date)->format("Y-m-d");

第二种方法:

使用一些手动代码:

$close_date = "08/25/2017";
$date_vars = preg_split("#/#", $close_date); 
print_r($date_vars);

然后使用$date_vars转换为以下代码所需的格式:

$close_date = $date_vars[2]."-".$date_vars[0]."-".$date_vars[1];

P.S:您还可以使用PHP explode()函数来分解日期值。