30 / 30 / 37
Регистрация: 03.06.2014
Сообщений: 1,054
1

Разница дат в днях

12.01.2017, 15:50. Показов 2531. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Подскажите что делать и в каком направлении идти.
даты у меня в формате date("Y-m-d").
пробовал вот так:
PHP
1
2
3
4
5
6
7
8
9
10
$date_p_hot = date("Y-m-d");
$date_hot = $row["post_hot_line"]; /вытягиваю с базы
var_dump($date_p_hot);
var_dump($date_hot);
$arr1 = explode('-', $date1);
$arr2 = explode('-', $date2);
$time1 = mktime(0,0,0,$arr1[1],$arr1[0],$arr1[2]);
$time2 = mktime(0,0,0,$arr2[1],$arr2[0],$arr2[2]);
$dif = ($time2 - $time1) / 86400;
echo $dif;
мне выводит
string(10) "2017-01-12" string(10) "2017-01-15"
Warning: mktime() expects parameter 5 to be long, string given in page-editing-ads.php on line 19

Warning: mktime() expects parameter 5 to be long, string given in page-editing-ads.php on line 20
0
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.01.2017, 15:50
Ответы с готовыми решениями:

Вычислить разницу дат в днях
есть две даты в таком формате 2012-12-20 2012-11-01 как найти их разницу в днях?

Определить разницу двух дат в днях
Ребятишки,помогите,не могу разобраться. вообщем вот задание: Посетитель вводит дату праздника, в...

Разница в днях
Здравствуйте! Под вечер уже мозг сломал на простой задаче... Не подскажите, есть массив дней ...

Разница дат в днях
Форум всем доброй ночи или дня (в зависимости от региона) Подскажите пожалуйста, как разницу двух...

7
Эксперт PHP
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
12.01.2017, 16:06 2
Shoshona,
PHP
1
2
3
$date_p_hot = new DateTime("today");
$date_hot = new DateTime($row['post_hot_line']);
$diff = $date_hot->diff($date_p_hot)->format("%a"); //если нужно со знаком, то вместо %a подставьте %R%a
0
1931 / 1522 / 703
Регистрация: 17.11.2012
Сообщений: 6,585
12.01.2017, 16:06 3
а $date1,$date2 откуда взялись?
0
Эксперт PHP
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
12.01.2017, 16:07 4
А по вашему коду
PHP
1
2
3
4
5
$date_p_hot = date("Y-m-d");
$date_hot = $row["post_hot_line"]; //вытягиваю с базы
// обратите внимание на имена переменных с датами
$arr1 = explode('-', $date1);
$arr2 = explode('-', $date2);
0
Хитрая блондиночка $)
1471 / 987 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
12.01.2017, 16:12 5
Лучший ответ Сообщение было отмечено Shoshona как решение

Решение

По-моему ты месяц с днем перепутал в случае формата даты как у тебя описано:
PHP
1
$time1 = mktime(0,0,0,$arr1[1],$arr1[2],$arr1[0]);
1
30 / 30 / 37
Регистрация: 03.06.2014
Сообщений: 1,054
12.01.2017, 16:32  [ТС] 6
Hikari, Спасибо, не заметил.
Цитата Сообщение от Kerry_Jr Посмотреть сообщение
А по вашему коду
PHP
1
2
3
4
5
$date_p_hot = date("Y-m-d");
$date_hot = $row["post_hot_line"]; //вытягиваю с базы
// обратите внимание на имена переменных с датами
$arr1 = explode('-', $date1);
$arr2 = explode('-', $date2);
это опечатка, на самом деле
PHP
1
2
3
4
5
6
7
8
9
10
$date_p_hot = date("Y-m-d");
$date_hot = $row["post_hot_line"];
var_dump($date_p_hot);
var_dump($date_hot);
$arr1 = explode('-', $date_p_hot);
$arr2 = explode('-', $date_hot);
$time1 = mktime(0,0,0,$arr1[1],$arr1[2],$arr1[0]);
$time2 = mktime(0,0,0,$arr2[1],$arr2[2],$arr2[0]);
$dif = ($time2 - $time1) / 86400;
echo $dif;
0
Kerry_Jr
12.01.2017, 17:04
  #7

Не по теме:

Цитата Сообщение от Hikari Посмотреть сообщение
месяц с днем
День с годом :)

0
Хитрая блондиночка $)
1471 / 987 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
12.01.2017, 19:12 8
Цитата Сообщение от Kerry_Jr Посмотреть сообщение
День с годом
Ой! и правда. Сама тоже перепутала
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.01.2017, 19:12
Помогаю со студенческими работами здесь

Подсчитать разницу дат в днях
Доброго времени суток! Допустим есть датагрид с двумя столбцами по одному столбцу идут первые даты...

Разница в днях
Найти разницу в днях между двумя заданными датами. Даты вводить с клавиатуры

Разница в днях
Найти разницу в днях между двумя заданными датами. Даты вводить с клавиатуры.

2 Даты, разница в днях
Доброго время суток! Есть две даты например «02:02:2006» и «05:11:2007», вопрос: как узнать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru