Суббота , 23 октября 2021
Хотите зарабатывать 200 000? Вам уже поздно, но есть шанс у ваших детеСлучай на экзамене: как вместо 5 получилось 2Кидок Google – бесплатный объем для фото-видео ограничат 15ГБ. СамоНаше будущее – распределенная генерация, но все новое – хороНиконовы: Прадед Василий и прабабушка ПелагеяЗайцевы: Прадед Михей, его брат Архип и дед ПавелАльткотельная: что это такое и где обманываютБлаготворительность: за и противПроблемы современного образованияДо властей дошло – снижения ставки по ипотеке не делает жилье дАдекватность школьного курса математикиМожно ли увеличить мощность передаваемую по кабелюКак продолжительный карантин скажется на здоровьеСроки эпидемииКак наблюдать взаимное сокращение длины в обычной жизни, без всякЕГЭ по математике в дурдомеНидерланды: вход в закон евро, выход дваПутешествие бутылки из России в ГерманиюВызов России в Нагорный КарабахНавальный стал совсем плохЭкспериментальная проверка парадокса близнецовВласти борются с анонимностью в интернете путем арестовСберМаркет: какое будущее нас ждетСравнение зависимости бюджета России от нефти 2011 и в 2021 годуНавальный обходит ПутинаСША: убийственные данные по эпидемииСоздателя Nexta будут судить?Парадокса близнецов нет: объяснение на школьном уровнеСкладывается впечатление, что пенсию скоро вообще отменятКак бухают американцыКак “прямо” проверить постоянство скорости светаВ чем суть парадокса “Парадокс близнецов”Мы говорим навальный, подразумеваем Скрипаль. Мы говорим СкрипалКак сделать видеонаблюдение на даче?ОСАГО: кто виноват и что делатьСтраховые компании мошенничают с ОСАГО?Половина американцев не имеют свободных 100 долларовИмеют ли США право вводить санкции?Сколько платят за ЖКХ в США50% американцев получают от правительства больше денег, чем отдаютРаковая опухоль БелоруссииВельмі верагоднаКак отравили НавальногоЧто делать со старыми блоками питания?Кто ответит за карантин?Сила тяжести на поверхности классической черной дырыСравнение стоимости кВт⋅ч от солнечных панелей и ТЭСДоходы и расходы американцевПосле Лукашенко хоть потоп!Задача: поспорили как-то Миллер с Сеченым у кого больше… трубаКак объясняются парадоксы теорий относительностиНа Международной космической станции началась война дрелей?Почему я не читаю научно-популярную публицистикуКакого цвета классическая Черная дыра?Как решать задачи по физике
ГЛАВНАЯ >> Информационные технологии >> Как подсчитать количество дней между двумя записями на сайте (php)

Как подсчитать количество дней между двумя записями на сайте (php)

У меня на моем сайте о моих путешествиях в отдельных категориях собраны записи одного путешествия. Как правило, первая запись – начало путешествия, дата которого – это дата начала. Последняя запись – конец, дата окончания.

Чтобы автоматически посчитать длительность как отдельного путешествия, как и суммарно всех путешествий, нужно было посчитать количество дней между первой и последней датой по категориям, которые относятся к отдельным путешествия.
Готового решения не нашел, с помощью спецов, составил такой код.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
$d[0]=0;
$i=0;
//********** Получаем все подкатегории категории id=165
$args=array(
'orderby' => 'name',
'order' => 'ASC',
'parent' => 165
);
$categories=get_categories($args);
foreach($categories as $category) {
//if ($category->category_parent != 0) {
//********** Для каждой подкатегории определяем дату первого поста
$posts_asc = get_posts( array(
	'numberposts'     => 1,
	'category'        => $category->term_id,
	'orderby'         => 'post_date',
	'order'           => 'DESC'
) );
$date_end = $posts_asc[0]->post_date;
//********** Для каждой подкатегории определяем дату последнего поста
$posts_desc = get_posts( array(
	'numberposts'     => 1,
	'category'        => $category->term_id,
	'orderby'         => 'post_date',
	'order'           => 'ASC'
) );
$date_start = $posts_desc[0]->post_date;
//********** Вычисляем длительность каждой категории
$i=$i+1;
$d[$i]=round( ( strtotime( $date_end ) - strtotime( $date_start ) ) / DAY_IN_SECONDS );
$d[0]=$d[0]+$d[$i];
//********** Выводим подкатегории и длительность в днях.
echo '<a href="' . get_category_link( $category->term_id ) . '" ' . '>' . $category->name.'</a> ';
echo $d[$i], "\n";
}
//}
echo "Общее количество дней ",$d[0];

Конечно же вам потребуется немного модифицировать код под ваши id категорий и вашу конкретику. Если возникнут затруднения – пишите, постараюсь помочь!))

Это моя статья с моего старого сайта о путешествиях selftrips.ru. Тогда у меня не было другого сайта, и я публиковал там совершенно не тематические статьи.Теперь переношу сюда. Дата оригинальной статьи.
Дзен версия.

© Копирование и перепечатка материалов только с разрешения автора

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: