Есть ли функция PHP, которую я могу использовать, чтобы сделать что-то вроде следующего:
Да, есть: strtotime () :
strtotime("-6 months");
strtotime("+2 years");
Они вернут отметки времени Unix. Таким образом, вы можете поместить результат в date()
или localtime()
или gmtime()
.
Пожалуйста, не пытайтесь вычесть 6 месяцев или добавить 2 года от time()
. Это не учитывает такие вещи, как летнее или секундное скачкообразное изменение, и все же дает вам значение в секундах, что вряд ли будет необходимой вам. Пусть функции библиотеки выполняют это.
Как это:
$date6monthsago = strtotime('-6 months'); $date2year = strtotime('+2 year');
Выберите в соответствии с вашим использованием следующий код ..
echo date('m/d/Y',strtotime("-6 months")); //ago 6month o/p 05/23/2011 echo date('dm-Y',strtotime("6 months")); //comming 6month o/p 23-05-2012 echo date('mdY',strtotime("+2 years")); //comming year o/p 11.23.2013
http://de2.php.net/manual/en/datetime.add.php и подобные «новые» методы могут также быть вашим другом.