2012-08-16 68 views
1

內的具體日期我有一個表events添加天數組

`id` int(10) unsigned NOT NULL AUTO_INCREMENT, 
`data` date DEFAULT NULL, 
`days` int(2) DEFAULT NULL, 
PRIMARY KEY (`id`) 

了多項紀錄。

我產生了所有可用日期

$sql = "SELECT * FROM events WHERE `data` LIKE '".$cYear."-".$cMonth."-%'"; 
$sql_result = mysql_query ($sql, $connection) or die ('request "Could not execute SQL query" '.$sql); 
while ($row = mysql_fetch_assoc($sql_result)) { 
$unavailable[] = $row["data"]; 
$days[] = $row["days"]; 
} 

數組$不可用的是這樣的一個數組:(2012-08-10,2012-08-25) 數組$天是這樣的:( 3,2)

我需要一個這樣的數組:(2012-08-10,2012年8月11日,2012年8月12日,2012-08-25,2012年8月26日)

謝謝!

回答

1

這是一些代碼,可以生成你想要的東西。

<?php 

$unavailable = array('2012-08-10', '2012-08-25'); 
$days = array(3, 2); 

$dates = array(); 
for ($i = 0; $i < count($days); $i++) 
{ 
    $tm = strtotime($unavailable[$i]); 
    for ($d = 0; $d < $days[$i]; $d++) 
    { 
     $dates[] = date('Y-m-d', $tm + $d * 24 * 60 * 60); 
    } 
} 
print_r($dates); 
?> 

你可以移動這個代碼進入,同時你的代碼的循環,以防止創建$不可用,$天陣列

+0

謝謝!工作中。 :) – 2012-08-16 11:00:01

+0

「投票要求15聲望」我有8 :( – 2012-08-17 07:07:24