如何使用PHP从较新的日期中减去旧日期2010-10-18 07:44:53
?PHP - 如何从较新的日期减去较旧的日期?
回答
PHP> = 5.3.0只有 – Spilarix 2010-10-18 15:52:20
有没有另一种方式? – HELP 2010-10-18 15:53:59
有关替代方法,请参考此问题的答案:http://stackoverflow.com/questions/676824/how-to-calculate-the-date-difference-between-2-dates-using-php – doppelgreener 2010-10-18 15:54:17
接听样的问题取决于你想要什么样的返回值。秒?分钟?这里有一个简单的功能,你可以尝试在任何你想要的形式来获取值:
<?php
define('SUBDATES_SECS', 0);
define('SUBDATES_MINS', 1);
define('SUBDATES_HOURS', 2);
define('SUBDATES_DAYS', 3);
define('SUBDATES_WEEKS', 4);
define('SUBDATES_MONTHS', 5);
define('SUBDATES_YEARS', 6);
function sub_dates($older, $newer, $ret = SUBDATES_SECS) {
$older = (is_numeric($older)) ? $older : strtotime($older);
$newer = (is_numeric($newer)) ? $newer : strtotime($newer);
$result = $newer - $older;
switch($ret) {
case SUBDATES_MINS:
$result /= 60;
break;
case SUBDATES_HOURS:
$result /= 120;
break;
case SUBDATES_DAYS:
$result /= 86400;
break;
case SUBDATES_WEEKS:
$result /= 604800 ;
break;
case SUBDATES_MONTHS:
$result /= 2629743;
break;
case SUBDATES_YEARS:
$result /= 31556926;
break;
}
return $result;
}
使用它:
<?php
$older = time();
sleep(3);
$newer = time();
echo sub_dates($older, $newer);
// Returns 3
echo sub_dates($older, $newer, SUBDATES_MINS);
// Returns 0.05
echo sub_dates('2010-04-19 01:01:00', '2010-04-19 01:02:00', SUBDATES_MINS);
// Returns 1
这是相当未经测试,但!
- 1. 比较两个日期时减去日期
- 2. 如何减去日期日期在JavaScript
- 3. 日期。减去从列当前日期
- 4. VBA不能从日期减去日期
- 5. PHP - 比较日期
- 6. php日期比较
- 7. PHP比较日期
- 8. PHP比较日期
- 9. PHP:比较日期
- 10. PHP日期比较
- 11. PHP比较日期
- 12. 如何减去日期?
- 13. 减去日期
- 14. 减去日期
- 15. 减去日期
- 16. 减去日期
- 17. 减去日期变量PHP
- 18. PHP/MySQL的比较日期
- 19. PHP中的日期比较
- 20. 日期比较PHP的MySQL
- 21. 我如何从两个日期中减去两个日期?
- 22. 日期减去日期“工作日”
- 23. Visual Foxpro - 减去两列数字日期和比较结果的具体日期
- 24. MYSQL有2个表格。总共相同的日期。比较和减去日期
- 25. PHP如何减去或添加日期?
- 26. 从日期元组减去
- 27. 从日期减去分钟
- 28. 日期比较
- 29. 从PHP的MySQL日期比较
- 30. 比较LINQ中的过去日期
可能重复的[如何计算日期之间的差异使用php](http://stackoverflow.com/questions/676824/how-to-calculate-the-date-difference-between-2-dates-使用-php) – Gordon 2010-10-19 08:43:18