Установка времени и даты и добавление к ней в PHP - PullRequest
0 голосов
/ 17 января 2012

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

Кажется, это лучший сценарий, который я модифицировал:

$minutes = 5;
$endtime = new DateTime('2012-01-01 09:00');
$newendtime = $endtime->format('Y-m-d H:i');

$timedate = new DateTime('2012-01-01 09:00');

while($stamp < $newendtime)
{
$time = new DateTime($timedate);
$time->add(new DateInterval('PT' . $minutes . 'M'));
$timedate = $time->format('Y-m-d H:i');

echo $timedate;
}

Ответы [ 3 ]

5 голосов
/ 18 января 2012
$minutes = 5;
$endtime = new DateTime('2012-01-01 09:00');

//modified the start value to get something _before_ the endtime:
$time = new DateTime('2012-01-01 8:00');
$interval = new DateInterval('PT' . $minutes . 'M');

while($time < $endtime){
   $time->add($interval);
   echo $time->format('Y-m-d H:i');
}
1 голос
/ 18 января 2012

Делайте все за секунды и используйте php time(), date() и mktime.

В UNIX Time даты хранятся в виде количества секунд с 1 января 1970 года.

Вы можете отображать метки времени UNIX с помощью date().

 $time = time(); // gets current time
 $endtime = mktime(0,0,0, 1, 31, 2012); // set jan 31 @ midnight as end time
 $interval = 60 * 5;  // 300 seconds = 5 minutes
 while($time < $endtime){
     $time += $interval;
     echo date("M jS Y h:i:s a",$time) . "<br>"; // echos time as Jan 17th, 2012 1:04:56 pm
 }

date ссылка: http://us3.php.net/manual/en/function.date.php (включая ссылку на превосходный формат даты)

mktime ссылка: http://us2.php.net/mktime

time() получает только текущее время, но только для пинка и хихиканья: http://us2.php.net/time

И это очень легко хранить в базе данных!

0 голосов
/ 18 января 2012

Эта функция позволит вам добавить дату к существующей дате и времени.Это также сохраняет ЧЧ: ММ: СС

<?php
function add_date($givendate,$day=0,$mth=0,$yr=0) {
      $cd = strtotime($givendate);
      $newdate = date('Y-m-d h:i:s', mktime(date('h',$cd),
    date('i',$cd), date('s',$cd), date('m',$cd)+$mth,
    date('d',$cd)+$day, date('Y',$cd)+$yr));
      return $newdate;
              }

?>

Использование:

add_date($date,12,0,0);

, где $ date - ваша дата.

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