дата php 1 месяцем ранее - PullRequest
1 голос
/ 29 марта 2011

Ну, я использую эту функцию, чтобы получить летнее время в Мексике.

function horarioVerano() { 
$year  = date("Y"); 
$ahora = strtotime(date("d-m-Y"));   

$inicio_invierno = strtotime("last Sunday April $year");
//echo date('Y-m-d H:i:s', $inicio_invierno); 

$fin_invierno = strtotime("last Sunday November $year"); 
//echo date('Y-m-d H:i:s', $fin_invierno); 

if ($ahora > $inicio_invierno && $ahora <= $fin_invierno) 
   $num = 5; 
else 
   $num = 6;

return $num;

}

, но я всегда получаю дату предыдущего месяца, если я echo date("Y-m-d",$inicio_invierno), я получаю 2011-03-27, а не 2011-04-24, как должно быть, то же самое для любого другого месяца, который я получаю в предыдущем месяце

Ответы [ 2 ]

1 голос
/ 29 марта 2011

В чем именно смысл этого?

$ahora =strtotime(date("d-m-Y"));   

Вы строите дату на основе строки, а затем возвращаете ее обратно в значение времени (которое является целым числом) с помощью strtotime (). Какая трата процессорных циклов. Как насчет

$ahora = time();

вместо

1 голос
/ 29 марта 2011

"последнее воскресенье апреля $ year" анализируется как "April $ year" (который дает первое число месяца), а затем вычисляется "последнее воскресенье" относительно этого.Если вы хотите последнее воскресенье апреля, просто скажите: «последнее воскресенье из апреля $ года».Подробнее см. в документации .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...