2012-02-02 68 views
2

我要運行一段時間(或)環路輸出日期的小清單作爲一個數組產生從PHP陣列,同時在循環

$start = $day = strtotime("-1 day"); 
$end = strtotime('+6 day'); 
while($day < $end) 
{ 
    echo date('d-M-Y', $day) .'<br />'; 
    $day = strtotime("+1 day", $day) ; 
} 

這工作正常進行打印,但我想將其保存爲一個數組(並將其插入到mysql數據庫中)。 是的!我不知道我在做什麼。

回答

8

創建一個數組,你需要先初始化你的循環

$start = $day = strtotime("-1 day"); 
$end = strtotime('+6 day'); 
$dates = array(); //added 
while($day < $end) 
{ 
    $dates[] = date('d-M-Y', $day); // modified 
    $day = strtotime("+1 day", $day) ; 
} 
echo "<pre>"; 
var_dump($dates); 
echo "</pre>"; 

(因變量範圍)之外,那麼您可以使用foreachwhile

的foreach方法使用日期:

foreach($dates as $date){ 
    echo $date."<br>"; 
} 

while approach:

$max = count($dates); 
$i = 0; 
while($i < $max){ 
    echo $dates[$i]."<br>"; 
} 
+0

筆記是有用的,以及選項。 – grantiago 2012-02-02 01:39:25

2
$arr = Array(); 
while(...) { 
    $arr[] = "next element"; 
    ... 
} 

[]增添了新元素的數組,就像push()但沒有調用函數的開銷。

1

簡單的方法是隻:

$start = $day = strtotime("-1 day"); 
$end = strtotime('+6 day'); 
$arr = array(); 
while($day < $end) 
{ 
    $arr[] = date('d-M-Y', $day); 
    $day = strtotime("+1 day", $day) ; 
} 

// Do stuff with $arr 

$arr[] = $var是用於附加到在PHP數組的語法。 php中的數組沒有固定的大小,因此可以輕鬆地添加到數組中。