gpt4 book ai didi

PHP:strtotime 为 future 日期返回 false?

转载 作者:可可西里 更新时间:2023-10-31 22:54:40 27 4
gpt4 key购买 nike

如果你不相信我,这里有一些我放入 eclipse 中的调试表达式:

"strtotime("2110-07-16 10:07:47")" = (boolean) false    
"strtotime("2110-07-16")" = (boolean) false

我在我的函数中使用它,该函数返回开始日期和结束日期之间的随机日期:

public static function randomDate($start_date, $end_date, $format = DateTimeHelper::DATE_FORMAT_SQL_DATE)
{
if($start_date instanceof DateTime) $start_date = $start_date->format(DateTimeHelper::DATE_FORMAT_YMDHMS);
if($end_date instanceof DateTime) $end_date = $end_date->format(DateTimeHelper::DATE_FORMAT_YMDHMS);

// Convert timetamps to millis
$min = strtotime($start_date);
$max = strtotime($end_date);

// Generate random number using above bounds
$val = rand($min, $max);

// Convert back to desired date format
return date($format, $val);
}

知道如何让它为 future 的日期返回正确的 unix 时间吗?

谢谢!

最佳答案

如果要处理 32 位整数日期范围之外的日期,请使用 PHP 的 dateTime 对象

try {
$date = new DateTime('2110-07-16 10:07:47');
} catch (Exception $e) {
echo $e->getMessage();
exit(1);
}

echo $date->format('Y-m-d');

关于PHP:strtotime 为 future 日期返回 false?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3266077/

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