Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Массив дат.
 
 автор: lElectroHardl   (28.09.2013 в 14:35)   письмо автору
 
 

Добрый день.
Делаю парсер по платежной системе. Платежка не отдает данные старше 30 дней, поэтому надо сделать массив по блокам дат и слепить его.
Загвоздка с перебором дат. Помощь нужна.

Есть первая дата: 23.08.2013
Есть последняя дата: сегодня.
Кратность дат: 29 дней.

Нужно сделать блок дат по 29 дней каждый.
На выходе получаем:
Array1 ( [0] => 23.08.2013 [1] => 21.09.2013 )
Array2 ( [0] => 21.09.2013 [1] => 20.10.2013 )

Почему-то цикл получается бесконечным... Конечно, я что-то не учел, поэтому и не работает :). Но вот что...

<?php
// первая дата: 23.08.2013
$startday "23";
$startmonth "08";
$startyear "2013";

// набор дат
for ($i=0strtotime($dateStar[$i]) <= strtotime(date("d.m.Y")); $i++)
{
    
$dateStar[$i] = $startday.".".$startmonth.".".$startyear;
    
$dateEnd[$i] = date("d.m.Y"mktime(000$startmonth$startday+29$startyear));

    
$dateParse explode("."$dateEnd[$i]);
    
$startday $dateParse[0];
    
$startmonth $dateParse[1];
    
$startyear $dateParse[2];
}

// проверка
echo "DATA:<br />";
print_r($dateStar);
echo 
'<br />';
print_r($dateEnd);
echo 
'<br />';


Спасибо.

  Ответить  
 
 автор: confirm   (28.09.2013 в 14:39)   письмо автору
 
   для: lElectroHardl   (28.09.2013 в 14:35)
 

Тут пример вывода временного интервала, нужно только изменить интервал.

  Ответить  
 
 автор: lElectroHardl   (28.09.2013 в 15:03)   письмо автору
 
   для: confirm   (28.09.2013 в 14:39)
 

Не хочет:
"Class 'DateInterval' not found in ..."
Стоит PHP 5.2.0, OpenServer

  Ответить  
 
 автор: confirm   (28.09.2013 в 15:38)   письмо автору
 
   для: lElectroHardl   (28.09.2013 в 15:03)
 

Этот класс доступен начиная с версии РНР 5.3.0.
В OpenServer включены версии и старше, прочтите как подключить другую версию, и все будет ОК.

  Ответить  
 
 автор: lElectroHardl   (28.09.2013 в 16:09)   письмо автору
 
   для: confirm   (28.09.2013 в 15:38)
 

Спасибо.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования