Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Уменьшение даты на 1 день

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Хэлп
gliukus
Отправлено: 09 Января, 2012 - 18:41:22
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2010  


Помог: 0 раз(а)




Прошу помочь!

Как уменьшить дату на 1 день?

Есть дата в формате ГГГГ-MM-ДД (важно: дата не текущая, прошедшая), нужно уменьшить ее на 1 день.

Спасибо!
 
 Top
Panoptik
Отправлено: 09 Января, 2012 - 19:06:37
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2493
Дата рег-ции: Нояб. 2011  
Откуда: Одесса, Украина


Помог: 131 раз(а)






-----
Just do it
 
 Top
Okula
Отправлено: 09 Января, 2012 - 19:12:11
Post Id



Участник


Покинул форум
Сообщений всего: 1389
Дата рег-ции: Окт. 2010  


Помог: 42 раз(а)




Работа с классом DateTime
PHP:
скопировать код в буфер обмена
  1. $date = "ГГГГ-ММ-ДД";
  2. $d = new DateTime($date);
  3. $d->modify("-1 day");
  4. echo $d->format("Y-m-d");

(Отредактировано автором: 09 Января, 2012 - 19:12:30)

 
 Top
vectorserver
Отправлено: 09 Января, 2012 - 19:12:49
Post Id



Гость


Покинул форум
Сообщений всего: 105
Дата рег-ции: Нояб. 2011  


Помог: 3 раз(а)




gliukus пишет:
Прошу помочь!

Как уменьшить дату на 1 день?

Есть дата в формате ГГГГ-MM-ДД (важно: дата не текущая, прошедшая), нужно уменьшить ее на 1 день.

Спасибо!


CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. $date = date("Y-m-d");
  3. echo "Сегодня: ".$date."<br>";
  4. $yesterday = date("Y-m-d",mktime(0, 0, 0, date("m")  , date("d")-1, date("Y")));
  5. echo "Вчера: ".$yesterday;
  6. ?>
 
 Top
PATCH
Отправлено: 09 Января, 2012 - 19:25:26
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 924
Дата рег-ции: Апр. 2011  


Помог: 22 раз(а)




Okula пишет:
Работа с классом DateTime
PHP:
скопировать код в буфер обмена

$date = "ГГГГ-ММ-ДД";

$d = new DateTime($date);

$d->modify("-1 day");

echo $d->format("Y-m-d")

ты чавэ, какие классы, раздел видел?)) p.s "для новичков".
 
 Top
gliukus
Отправлено: 09 Января, 2012 - 19:38:42
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Июль 2010  


Помог: 0 раз(а)




Okula пишет:
Работа с классом DateTime
PHP:
скопировать код в буфер обмена
  1. $date = "ГГГГ-ММ-ДД";
  2. $d = new DateTime($date);
  3. $d->modify("-1 day");
  4. echo $d->format("Y-m-d");


Спасибо! Воспользовался Вашей методом - все работает!

Всем спасибо!
 
 Top
Okula
Отправлено: 09 Января, 2012 - 20:37:29
Post Id



Участник


Покинул форум
Сообщений всего: 1389
Дата рег-ции: Окт. 2010  


Помог: 42 раз(а)




PATCH пишет:
ты чавэ, какие классы, раздел видел?)) p.s "для новичков".

Это стандартные классы PHP. И уметь работать с ними новичкам нужно так же как и с статическими функциями. Тем более он куда удобнее чем высчитывать количество дней в секундах.
Таким же образом можно прибавлять/отнимать не только дни но и недели и т.д.
 
 Top
caballero
Отправлено: 09 Января, 2012 - 22:55:07
Post Id


Активный участник


Покинул форум
Сообщений всего: 5998
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




$date = "ГГГГ-ММ-ДД"

strtotime("-1 day",strtotime($date)),


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
Greider
Отправлено: 19 Января, 2017 - 14:25:42
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Дек. 2013  


Помог: 0 раз(а)




А как вычесть один РАБОЧИЙ день?
 
 Top
Строитель Модератор
Отправлено: 19 Января, 2017 - 15:09:24
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




Greider пишет:
А как вычесть один РАБОЧИЙ день?
PHP:
скопировать код в буфер обмена
  1. if (date('w') > 0 && date('w') < 6) {
  2.     echo date('l');
  3. }
 
 Top
Sail
Отправлено: 19 Января, 2017 - 16:15:20
Post Id



Участник


Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014  


Помог: 57 раз(а)




Greider, и ещё учесть переносы праздничных дней, выпадающих на выходные и переносы рабочих дней на выходные (тоже, наверное, бывает)... в соответствии с законодательством государства...
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB