gpt4 book ai didi

php - fatal error :未捕获异常 'Exception',消息为“DateTime::__construct(): 无法解析时间字符串

转载 作者:可可西里 更新时间:2023-10-31 22:45:37 25 4
gpt4 key购买 nike

我收到这个错误

( ! ) Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct(): Failed to parse time string (06-28-2014 07:43:58 ) at position 0 (0): Unexpected character' in /Users/matt/Desktop/Likes/forgot/activate.php on line 17

尝试这样做时

//DB query
$stmt = $con->prepare("SELECT token_created_at from reset WHERE token = :urltoken");
$stmt->bindValue(':urltoken', $_GET['token']);
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
while($row = $stmt->fetch()) {
$token_created_at = $row['token_created_at'];
}

//Remove after testing
echo $token_created_at;

$my_dt = new DateTime($token_created_at);

//Modify error
$expires_at = $my_dt->modify('+1 hour');

//Return current time to match
$current_time = date('m-d-Y H:i:s ', time());

第 17 行是 $my_dt = new DateTime($token_created_at); 这是我的时间格式 06-28-2014 07:43:58

这就是我生成 token_created_at 的方式,$time_gen = date('m-d-Y H:i:s ', time());

最佳答案

您传递的日期字符串是 not supported由 DateTime 解析器。您必须使用 createFromFormat 创建 DateTime 对象.此方法允许您在创建新的 DateTime 对象时指定自定义格式:

$my_dt = DateTime::createFromFormat('m-d-Y H:i:s', $token_created_at);

如果您仍然收到错误,这意味着您的 $token_created_at 不是您指定的格式:

$now = date('m-d-Y H:i:s'); //string(19) "06-28-2014 15:00:47"

var_dump(DateTime::createFromFormat('m-d-Y H:i:s', $now));
object(DateTime)#1 (3) {
["date"]=>
string(19) "2014-06-28 15:00:47"
["timezone_type"]=>
int(3)
["timezone"]=>
string(13) "Europe/Berlin"
}

编辑

我看到了您的问题 - 格式字符串在 s 之后有一个空格。格式字符串必须完全匹配:

$my_dt = DateTime::createFromFormat('m-d-Y H:i:s ', $token_created_at);

关于php - fatal error :未捕获异常 'Exception',消息为“DateTime::__construct(): 无法解析时间字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24466794/

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