gpt4 book ai didi

php - 另一个日期时间问题

转载 作者:行者123 更新时间:2023-11-29 01:15:16 24 4
gpt4 key购买 nike

我目前有一个这种格式的日期

2010-03-03 10:39:18

这是 MySQL 中的一个 TIMESTAMP 字段。对于名为 Solr 的搜索引擎,我需要这种格式的日期:

1995-12-31T23:59:59Z

这是他们网站上关于日期的一些文字:

Solr expects dates to be in UTC when indexing. The format for this date field is of the form 1995-12-31T23:59:59Z, and is a more restricted form of the canonical representation of dateTime http://www.w3.org/TR/xmlschema-2/#dateTime. The trailing "Z" designates UTC time and is mandatory. Optional fractional seconds are allowed: 1995-12-31T23:59:59.999Z All other components are mandatory.

SO 上的另一个 Q 给了我这段代码,但它不起作用。 Solr 提示“无效的时间字符串”:

$solr_date = date('c', (strtotime($date_from_mysql)); // doesn't work

回显 $solr_date 时, 上面提到的尾随 Z 不存在。谢谢。

最佳答案

为什么不直接将其转换为 UTC?

    $datetime = "2010-01-19 00:00:00";
echo "Datetime Before: ".$datetime."<br />";
$dttostr = strtotime("2010-01-19 00:00:00");
echo "Datetime After: ".formatToUTC($dttostr)."<br />";
echo "System Timezone: ".date_default_timezone_get()."<br />";

function formatToUTC($passeddt) {
// Get the default timezone
$default_tz = date_default_timezone_get();

// Set timezone to UTC
date_default_timezone_set("UTC");

// convert datetime into UTC
$utc_format = date("Y-m-d\TG:i:s\Z", $passeddt);

// Might not need to set back to the default but did just in case
date_default_timezone_set($default_tz);

return $utc_format;
}

关于php - 另一个日期时间问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2370171/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com