0

我正在创建前 30 名音乐排行榜。

如何获得两个 mysql 格式化日期时间之间的周数?像

从:2013-01-15 11:41:14

当前日期时间:2013-02-25 13:41:14

4

6 回答 6

1

使用 SQL 更好,但在 php 中会是这样的:

<?php
$datetime1 = new DateTime('2013-01-15 11:41:14');
$datetime2 = new DateTime('2013-02-25 13:41:14');
$interval  = $datetime1->diff($datetime2);
$diff      = $interval->format('%d');
echo (int)$diff/7;
于 2013-02-26T14:01:55.743 回答
0

您可以使用strtotime()方法,然后计算当前时间与 MySQL 数据库中的时间之间的差异。

于 2013-02-26T13:55:02.693 回答
0

减去使用时间strtotime

$difference = strtotime($first_date)-strtotime($second_date);

$weeks = round($difference / 604800 );
于 2013-02-26T13:56:09.743 回答
0
<?php
$db_time_a = strtotime('2013-01-15 11:41:14');
$db_time_b = strtotime('2013-02-25 13:41:14');

$seconds_in_between = $db_time_a - $db_time_b;

$hours = (int)($seconds_in_between/60/60);
$minutes = (int)($seconds_in_between/60)-$hours*60;
$seconds = (int)$seconds_in_between-$hours*60*60-$minutes*60;

echo 'The time in seconds in between the two times is: '.$seconds_in_between.' (Hours:'.$hours.', Minutes:'.$minutes.', Seconds:'.$seconds.')';
?>

您可以使用“剩余”将秒数分块并找出分钟(以及剩余的秒数)等等,直到达到您想要的时间距离。

于 2013-02-26T13:59:16.760 回答
0

WEEK()功能对您的查询有帮助吗?

我不太了解 Mysql,但让我们假设以下内容:

select WEEK(date1-date2) from mytable where name='Ken';
于 2013-02-26T13:59:29.303 回答
0

在 mysql 中尝试 DATEDIFF(date1, date2) 函数。DATEDIFF() 将返回两个给定日期之间的日期编号。希望您可以轻松地从输出中获得周数。

于 2013-02-26T14:07:31.120 回答