2013-05-11 50 views
0

我沒有膠水如何解決我的問題。 我想產生這樣一個數組:如何在PHP數組中添加動態密鑰

$days = array( 
      02=>array(NULL,'request_day'), 
      03=>array(NULL,'request_day'), 
      04=>array(NULL,'request_day'), 
      05=>array(NULL,'request_day'), 
     ); 

我需要這在日曆上顯示請求天。現在我處理一個我無法生成動態密鑰的問題(如上所述,鍵02/03/04/05)。

我的代碼看起來像這樣:

$days = array(); 
    $array_framework = array(NULL,'request_day'); 
    foreach ($period as $dt) 
    { 
     echo $dt->format("d"); 
     $blub = $dt->format("d"); 
     $days[] = array($blub=>$array_framework); 
    } 

$期是接連代表兩個日期之間的天數組,$咕嚕打印出一天。

+2

你試過array_push? – 2013-05-11 21:22:55

+0

丹尼爾是對的,使用array_push,現在你做了3維數組。 – 2013-05-11 21:32:11

+0

我可以使用array_push定義我的密鑰嗎?! – 2013-05-11 21:33:33

回答

0

我認爲這是你想要做的。如果將數組鍵從字符串(例如03)轉換爲整數(例如3)時出現問題,則將數組鍵轉換爲字符串。

$days = array(); 
$array_framework = array(NULL,'request_day'); 
foreach ($period as $dt) 
{ 
    $days[$dt->format("d")] = $array_framework; 
} 
+0

謝謝,但這並不真正有效。它產生Array([04] => Array([0] => [1] => request_day)[05] => Array([0] => [1] => request_day)[06] => Array [0] => [1] => request_day)[07] => Array([0] => [1] => request_day))' – 2013-05-11 22:00:41

+0

這就是你想要的。您可以忽略子數組中的0和1鍵。 – 2013-05-11 22:03:38

+0

驗證在聲明它後在行中添加'print_r($ array_framework)'。 – 2013-05-11 22:05:50

1

刪除$days[] = array($blub=>$array_framework);及用途:

$days[$blub] = $array_framework; 
+0

謝謝,但這並不真正有效。它會產生Array([04] => Array([0] => Array([0] => [1] => request_day))[05] => Array([0] => Array([0] = > [1] => request_day))[06] => Array([0] => Array([0] => [1] => request_day))[07] => Array([0] => Array [0] => [1] => request_day)))' – 2013-05-11 22:01:13

+0

查看更新的答案... – Baba 2013-05-11 22:04:28

+0

好的謝謝。該數組現在應該是什麼,但結果並不如預期的那樣......但這不是數組的錯 – 2013-05-11 22:19:33