PHP Преобразование даты в число (date to int). Словарь для брута по дате.


Для преобразования даты в число, воспользуемся функцией  strtotime();

 $date = '1970-01-01 00:00:00'
$int_date = strtotime("$date GMT"); 
echo $int_date;

Данная функция преобразует дату в строку. На выходе получим количество секунд от базовой даты -  01-01-1970 до введенной нами $date,
в данном примере получим "0" (т. к. $date = '1970-01-01 00:00:00' ).

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

echo date("d-m-Y", $int_date + 86400);  - //Получим строку следующего дня '1970-01-02'

Для создания списка от одной даты до другой воспользуемся ниже описанной функцией:

<?
function Get_date_list($date, $date2)
{
$file = 'brute.txt';

//Вводим дату начала... для нашего списка...
echo '<br /><b>Начнем наш список с даты - '.$date.' по '.$date2.'</b><br />';

    $int_date = strtotime("$date GMT"); //Получаем дату выраженную типом int (кол-во секунд от 1970-01-01)
    $int_date2 = strtotime("$date2 GMT"); //Получаем дату выраженную типом int (кол-во секунд от 1970-01-01)  
      
        echo 'Количество секунд1 от базовой даты (01-01-1970) -- '.$int_date.' - '.gettype($int_date).'<br />';
        echo 'Количество секунд2 от базовой даты (01-01-1970) -- '.$int_date2.' - '.gettype($int_date2).'<br />';
      
    while ($int_date<=$int_date2)
    {

//Преобразуем число в дату....  
echo date("d-m-Y", $int_date).'<br />';

//Запись
$str = date("dmY", $int_date);
file_put_contents($file, $str."\n", FILE_APPEND | LOCK_EX);
  
//Для получения следующей даты прибавим +86400 (кол-во секунд в одних сутках)
$int_date = $int_date + 86400;  
    }
}
 Get_date_list('1989-01-01 00:00:00', '2013-01-01 00:00:00'); //От какой даты по какую...
?>

Результат работы скрипта:  

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

Отправить комментарий