2010-12-15 19 views
-1

有什麼方法可以將PHP中的DATE用作數組。我需要做到以下幾點:

$date_array = (1-Jan => 'A', 2-Jan => 'B', 3-Jan => 'C', .... so on)將日期用作數組

這可能嗎?

+0

你想用什麼類型的日期作爲索引?日期時間對象?日期字符串? – joni 2010-12-15 09:26:17

+0

日期字符串將用作索引。 – cys 2010-12-15 10:53:28

回答

0

手動:

$array['1-Jan'] = 'A'; 
$array['2-Jan'] = 'B'; 
... 

或用一個循環:

$array = array(); 
$currentDate = strtotime('2010-01-01'); 
$totalDays = 365; 
for ($i=0; $i<$totalDays; $i++) { 
    $array[date('j-M', $currentDate)] = $i; 
    $currentDate = strtotime("+1 day", $currentDate); 
} 
+0

感謝您的示例代碼MarvinLabs,它有幫助! – cys 2010-12-15 11:28:47

+0

除此之外,你可以提出任何想法將3個單個數組顯示到表中嗎? – cys 2010-12-16 06:12:52

0

PHP手冊指定只有字符串和整數可以被用作用於ASSOC密鑰。數組,但日期返回一個字符串,所以他們應該沒問題,但是回想一下數值會有點混亂。

什麼是這樣的:

$arr = Array(
'A'=>date('Y-m-d', time()), 
'B'=>date('Y-m-d', time()-(7 * 24 * 60 * 60)) 
); 

echo in_array(date('Y-m-d'), $arr); 

那回聲 「1」。

我的錯誤,你就需要使用array_search()而不是in_array()的,所以你得到的數組鍵:

echo array_search(date('Y-m-d'), $arr); 

。OUPUTS 「A」。