2017-04-25 99 views
-1

爲什麼在下面的代碼中我所有的數據都沒有保存到數組中?未保存到數組的數據

我可以在foreach中做一個var_dump,它會告訴我我想要什麼但是$cbContent只返回第一個對象?

代碼:

$cbContent = array(); 

foreach ($guests as $guest) 
{ 
    $cbContent[] = array(
    'FirstName' => $guest['FirstName'], 
    'LastName' => $guest['LastName'], 
    'Email' => $guest['email'], 
    'Country' => $guest['country'], 
    '_CheckIn' => $guest['check-in_date'], 
    '_CheckOut' => $guest['check-out_date'], 
); 
} 
var_dump($cbContent); exit(); 

COD響應:

Array 
(
    [FirstName] => Test 
    [LastName] => Test 
    [Email] => 
    [Country] => New Zealand 
    [_CheckIn] => 2017-04-25 
    [_CheckOut] => 2017-04-27 
    [0] => Array 
     (
      [FirstName] => Test 1 
      [LastName] => Test 2 
      [Email] => 
      [Country] => United Kingdom 
      [_CheckIn] => 2017-04-25 
      [_CheckOut] => 2017-04-26 
     ) 
+3

'的var_dump()'的客人。也許這是你的訪客陣列是不正確的? – FrankerZ

+0

嘗試用'print_r($ cbContent);' –

+0

@FrankerZ它不是那個可以正常工作的東西 –

回答

0

更新: 嘗試使用:

array_push();

例如:

$cbContent = array(); 
foreach ($guests as $guest) 
{ 
    $data = array(
     'FirstName' => $guest['FirstName'], 
     'LastName' => $guest['LastName'], 
     'Email' => $guest['email'], 
     'Country' => $guest['country'], 
     '_CheckIn' => $guest['check-in_date'], 
     '_CheckOut' => $guest['check-out_date'], 
    ); 
    if(empty($cbContent)){ 
     $cbContent = $data; 
    } else { 
     array_push($cbContent, $data); 
    } 
} 
+0

爲什麼要投票?我只是想建議....有什麼不對嗎? array_push不會保存數據嗎? @Jess McKenzie只詢問數據沒有保存到數組中,所以無論如何他想將數據保存到數組中,這就是爲什麼我們可以使用array_push。請回復我的評論以澄清此問題,並請在做任何降薪之前先考慮一下。你沒有這樣做的幫助。 –

+0

謝謝,我已經更新了在我的問題中給了我什麼。它不應該全部在陣列中嗎? –

+0

歡迎您。你可以更新你的問題併發布數組「$ guests」的數據。看來問題出在陣列本身。 –