2013-11-28 181 views
0

晕,我有一个问题,在PHP中循环日期和时间。我有开始日期,结束日期,开始时间和结束时间的初始值。 我想循环20131201直到20131210与时间从0540直到0600在选定的日期期间的循环日期和时间

我运行我的代码,但它只是在20131201循环。

INSERT INTO golf_list VALUES ('', 'others', '', '20131201', '20131210', '0540', '0545', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131201', '20131210', '0545', '0550', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131201', '20131210', '0550', '0555', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131201', '20131210', '0555', '0600', 'IDR', '4','', 'royal', '0') 

我希望它环路,并有导致这样的:

INSERT INTO golf_list VALUES ('', 'others', '', '20131201', '20131210', '0540', '0545', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131201', '20131210', '0545', '0550', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131201', '20131210', '0550', '0555', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131201', '20131210', '0555', '0600', 'IDR', '4','', 'royal', '0') 

INSERT INTO golf_list VALUES ('', 'others', '', '20131202', '20131210', '0540', '0545', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131202', '20131210', '0545', '0550', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131202', '20131210', '0550', '0555', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131202', '20131210', '0555', '0600', 'IDR', '4','', 'royal', '0') 

INSERT INTO golf_list VALUES ('', 'others', '', '20131203', '20131210', '0540', '0545', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131203', '20131210', '0545', '0550', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131203', '20131210', '0550', '0555', 'IDR', '4','', 'royal', '0') 
INSERT INTO golf_list VALUES ('', 'others', '', '20131203', '20131210', '0555', '0600', 'IDR', '4','', 'royal', '0') 

...等等......直到10个步骤...

这是我的代码:

$start_date = "20131201"; 
    $end_date = "20131210"; 

    $start_hour = "05"; 
    $start_min = "40"; 

    $end_hour = "06"; 
    $end_min = "00"; 
    //$end_time = $end_hour."".$end_minute; 

    //$players = $_POST['players']; 
    /* 
    $price = $_POST['price']; 
    $price_standard = $_POST['price_standard']; 
    $price_extra = $_POST['price_extra']; 
    */ 
    $price_type = 4; 
$details = ""; 

    $start = new DateTime("$start_hour$start_min"); 
    $end = new DateTime("$end_hour$end_min"); 

    for($i = $start_date; $i <= $end_date; $i++) { 
     while($start < $end) { 
      $start_time = $start->format('Hi'); 
      $start->modify('+5 minute'); 
      $end_time = $start->format('Hi'); 

      $query1 = "INSERT INTO golf_list (golf_name, golf_type, location, start_date, end_date, start_time, 
         end_time, currency, price_type, details, gate, status) 
         VALUES ('', 'others', '', '$i', '$end_date', '$start_time', 
           '$end_time', 'IDR', '$price_type','$details', 'royal', '0')"; 

      echo "$query1<br/>"; 
     } 
    } 

任何解决方案?非常感谢您

回答

2
$start_date = "20131201"; 
    $end_date = "20131210"; 

    $start_hour = "05"; 
    $start_min = "40"; 

    $end_hour = "06"; 
    $end_min = "00"; 
    //$end_time = $end_hour."".$end_minute; 

    //$players = $_POST['players']; 
    /* 
    $price = $_POST['price']; 
    $price_standard = $_POST['price_standard']; 
    $price_extra = $_POST['price_extra']; 
    */ 
    $price_type = 4; 
    $details = ""; 



    for($i = $start_date; $i <= $end_date; $i++) { 

    $start = new DateTime("$start_hour$start_min"); 
    $end = new DateTime("$end_hour$end_min"); 


     for($j = $start; $j < $end; $j++) { 
      $start_time = $start->format('Hi'); 
      $start->modify('+5 minute'); 
      $end_time = $start->format('Hi'); 


      $query1 = "INSERT INTO golf_list (golf_name, golf_type, location, start_date, end_date, start_time, 
         end_time, currency, price_type, details, gate, status) 
         VALUES ('', 'others', '', '$i', '$end_date', '$start_time', 
           '$end_time', 'IDR', '$price_type','$details', 'royal', '0')"; 

      echo "$query1<br/>"; 
     } 
    } 
+0

只要复制/粘贴此代码在您的一个,和你将好去... – Joem

+0

好的非常感谢你,只是不同的一些微小你的答案。我现在可以解决,我的答案也一样:D –