здраствуйте, такая проблема $mon=date("m"); получяем 02 $mon2=date("m")+1; получяем 3 как правильно сделать чтоб $mon2 была "03" ?
date("m"); возвращает тебе string а date("m")+1; уже возвращает int, просто сделай вот такую проверку: PHP: $mon2=date("m")+1; $mon2 = ( $mon2<10 ? "0".$mon2 : $mon2 );
С какого-такого перепугу? У нас же указано, что число должно состоять из двух цифр. В нашем случае это называется zero-filled.
всеравно не пашет... задача - получить значение переменных $day, $month, $year циклом на 30 дней, начиная с сегоднешнего. PHP: <? $year=date("Y"); $month=date("n"); $day=date("d"); $lm=date("t"); for ($i=0; $i<=30; $i++) { if ($day>$lm){$day=1; $month++;} if ($day<10){$day="0".$day;} $month = ( $mon2<10 ? "0".$month : $month ); echo "$day.$month <br>"; $day++; } ?> а вот результат.. Код (Text): 21.02 22.002 23.0002 24.00002 25.000002 26.0000002 27.00000002 28.000000002 01.03 02.003 03.0003 04.00003 05.000003 06.0000003 07.00000003 08.000000003 09.0000000003 10.00000000003 11.000000000003 12.0000000000003 13.00000000000003 14.000000000000003 15.0000000000000003 16.00000000000000003 17.000000000000000003 18.0000000000000000003 19.00000000000000000003 20.000000000000000000003 21.0000000000000000000003 22.00000000000000000000003 23.000000000000000000000003 помогите пож.
PHP: <?php /** * Первый вариант - разделение. * Т.е мы получаем массив дат, без форматирования **/ $timestamp = array(); for($i = 1; $i <= 30; $i++) { $timestamp[] = strtotime("+{$i} day"); } /** * Второй вариант включает полное форматирование * данных функцией date уже на этапе генерации **/ $timestamp = array(); for($i = 1; $i <= 30; $i++) { $timestamp[] = date('d.m.Y', strtotime("+{$i} day")); } // Выводим (второй вариант) echo "<pre>" . print_r($timestamp, true) . "</pre>"; ?>
И вообще блин, учитесь думать самостоятельно, если хотите быть программистами. А-то вот Joost - сообщений в два раза больше моего, а нихрена до сих пор не умеет.