asstral
2.09.2014 - 13:59
Есть два timestamp - а, формат '2014-09-02 13:55:00' (т.е. текущее время) и '2014-08-08 14:35:07' (прошедшее).
Нужна разница в днях и годах.
Помогите пожалуйста, поиск выдал код:
<?
$diff = strtotime($timestamp2) - strtotime($timestamp1);
$days = floor($diff / 60*60*24);
$hours = floor($diff / 60*60);
// or whatever
?>
Его я переделал под себя:
$t1 = date ("Y-m-d G-i-s"); // тек. дата
$t2 = $bd->dw_by_id($id, 'time_stamp'); // Здесь я беру к примеру '2014-08-08 14:35:07'
$diff = strtotime($t1) - strtotime($t2);
$days = floor($diff / 60*60*24);
$hours = floor($diff / 60*60);
echo $days;
Выводит: 51747672 дней.
asstral
2.09.2014 - 14:14
Ахах, сам сделал:
$t1 = date ("Y-m-d G:i:s"); // тек. дата
$t2 = $bd->dw_by_id($id, 'time_stamp'); // Здесь я беру к примеру '2014-08-08 14:35:07'
$timedifference = strtotime($t1) - strtotime($t2);
$retval = bcdiv($timedifference,86400); // получаем кол-во дней.
Единственное, после нового года это работать будет...........
Winston
2.09.2014 - 23:06
asstral, я так понимаю данные в БД, вот на уровне СУРБД и надо делать это действие, нечего волочить в РНР всё что ни попадя, я уж молчу если результат этих манипуляций будет использоваться в запросе.
_____________
Стимулятор ~yoomoney - 41001303250491
asstral
4.09.2014 - 13:53
Winston, спасибо!
Valick , у меня запрос вида:
$q = 'SELECT * FROM dw WHERE access=0 ORDER BY id DESC LIMIT 20';
.. выводим все предпоследние dw. Но вот если timestamp больше 30 дней от текущей даты, то они не нужны.
Как мне переписать запрос к mysql???
Если поможете, будет очень здорово.
прямо из документации mysql
Here is an example that uses date functions. The following query selects all rows with a date_col value from within the last 30 days:
SELECT something FROM tbl_name WHERE DATE_SUB(CURDATE(),INTERVAL 30 DAY) <= date_col
asstral
4.09.2014 - 15:01
bestxp, благодарен Вам!
для благодарностей есть
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.