gpt4 book ai didi

PHP计算剩余时间

转载 作者:行者123 更新时间:2023-11-29 06:15:45 25 4
gpt4 key购买 nike

我有一个函数

function getEndTimeRemaining($timestamp, $format) {       
$difference = $timestamp - time();
if($difference < 0)
return false;
else{

$min_only = intval(floor($difference / 60));
$hour_only = intval(floor($difference / 3600));

$days = intval(floor($difference / 86400));
$difference = $difference % 86400;
$hours = intval(floor($difference / 3600));
$difference = $difference % 3600;
$minutes = intval(floor($difference / 60));
if($minutes == 60){
$hours = $hours+1;
$minutes = 0;
}

if($days == 0){
$format = str_replace('Days', '?', $format);
$format = str_replace('Ds', '?', $format);
$format = str_replace('%d', '', $format);
}
if($hours == 0){
$format = str_replace('Hours', '?', $format);
$format = str_replace('Hs', '?', $format);
$format = str_replace('%h', '', $format);
}
if($minutes == 0){
$format = str_replace('Minutes', '?', $format);
$format = str_replace('Mins', '?', $format);
$format = str_replace('Ms', '?', $format);
$format = str_replace('%m', '', $format);
}

$format = str_replace('?,', '', $format);
$format = str_replace('?:', '', $format);
$format = str_replace('?', '', $format);

$timeLeft = str_replace('%d', number_format($days), $format);
$timeLeft = str_replace('%ho', number_format($hour_only), $timeLeft);
$timeLeft = str_replace('%mo', number_format($min_only), $timeLeft);
$timeLeft = str_replace('%h', number_format($hours), $timeLeft);
$timeLeft = str_replace('%m', number_format($minutes), $timeLeft);

if($days == 1){
$timeLeft = str_replace('Days', 'Day', $timeLeft);
$timeLeft = str_replace('Ds', 'D', $timeLeft);
}
if($hours == 1 || $hour_only == 1){
$timeLeft = str_replace('Hours', 'Hour', $timeLeft);
$timeLeft = str_replace('Hs', 'H', $timeLeft);
}
if($minutes == 1 || $min_only == 1){
$timeLeft = str_replace('Minutes', 'Minute', $timeLeft);
$timeLeft = str_replace('Mins', 'Min', $timeLeft);
$timeLeft = str_replace('Ms', 'M', $timeLeft);
}

return $timeLeft;
}
}

我传入一个 MySQL 日期时间字段,该字段将转换为 strtotime

getEndTimeRemaining(strtotime($get_auction_details_result['end_date']), "%mo").

它将返回分钟数,即如果还剩 1 分钟则返回 1,如果只剩下几秒则返回 0,但我想知道还剩多少秒,即还剩 24 秒等。

谢谢

最佳答案

如果您使用 PHP >= 5.3,确实没有必要重新发明轮子

使用DateTime::diff() 。返回的 DateInterval 为您提供了您想要的所有部分,并且有自己的方法。

关于PHP计算剩余时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6673266/

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