php — получить первый день следующего месяца

При создании расписаний, календарей, и т.п. могут возникать задачи вроде — получить timestamp первого дня этого месяца, или последнего дня следующего и т.п.

В лоб это решается вот так:

Со следующим месяцем конструкция работает даже если $month выходит за рамки от 1 до 12 — mktime автоматически поправит год и вычислит месяц. Т.е. для 13 — мы получим январь и следующий год.

Элегантный способ

Есть еще «элегантный» способ. PHP даёт нам функцию strtotime(), которая к версии 5.4 сильно поумнела и понимает выражения вроде следующего:

Главное, быть аккуратным с тем, что получилось. В предыдущем примере действительно получится первый день текущего/следующего месяца, но время окажется равным текущему (т.е не будет 00:00:00 как ожидается).

Это тоже поправимо:

Написать комментарий

Мало букафф? Читайте есчо !

Генератор "удобных" паролей

Декабрь 19, 2012 г.

Простому пользователю от пароля хочется двух вещей - надежности и легкости запоминания. В случае произвольно создаваемых паролей, желаемая надежность достигается очень легко (увеличили длину генерируемого пароля или расширили набор символов, из которого ...

Читать

Как использовать callback функции внутри класса

Июнь 5, 2017 г.

Пробовали ли вы использовать функции PHP, требующие указания кол-бек функции в качестве аргумента? Я часто пользуюсь preg_replace_callback(). Если функция вызывается внутри класса, то хотелось бы и callback разместить внутри этого же класса (объекта). ...

Читать

 

Комментарии к «php — получить первый день следующего месяца»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: