0

該陣列由$this->load->var($data)一些全局變量傳遞。我需要從var爲我實例化的關聯數組中提取下面的數組。該數組目前看起來像這樣:請注意下面的多維數組。如何分手已經加載W /負載多維數組>瓦爾()

Dump => array(1) { 
    [9] => array(1) { 
    [0] => object(stdClass)#21 (8) { 
     ["day"] => string(2) "09" 
     ["eventContent"] => string(14) "slug ok" 
     ["eventTitle"] => string(4) "Slug" 
     ["id"] => string(1) "4" 
     ["user"] => string(3) "CZL" 
     ["user_id"] => string(1) "1" 
     ["slug"] => string(4) "Slug" 
     ["eventDate"] => string(10) "2013-07-09" 
    } 
    } 
} 

我需要將它轉化成這個樣子: 通知下面的一維數組。

Dump => array(1) { 
    [0] => object(stdClass)#21 (7) { 
     ["day"] => string(2) "09" 
     ["eventContent"] => string(14) "slug ok" 
     ["eventTitle"] => string(4) "Slug" 
     ["id"] => string(1) "4" 
     ["user"] => string(3) "CZL" 
     ["user_id"] => string(1) "1" 
     ["slug"] => string(4) "Slug" 
     ["eventDate"] => string(10) "2013-07-09" 
    } 
} 

除了將multi轉換爲單個,有沒有一種方法可以從多維數組中調用單數組?

我使用的多維數組上一個foreach,但它的輸出不正確。這是我正在使用的。 calendars是我傳給它的數組之上。

foreach ($calendars as $calendar) { 
     $url = calendar_link($calendar); 
     $string .= '<li>'; 
     $string .= '<h3>' . anchor($url, e($calendar->eventTitle)) . ' ›</h3>'; 
     $string .= '<p class="pubdate">' . e($calendar->eventDate) . '</p>'; 
     $string .= '</li>'; 
    } 

function calendar_link($calendar){ 
return 'calendar/event/' . intval($calendar->id) . '/' . e($calendar->slug); 
} 

回答

0

如果多維數組真的看起來酷似轉儲,那麼你應該能夠做到像財產以後:

$calendar_single = $calendars[9]; // I dont know why you get 9 as array key here?

那麼你應該有一個對象的數組。

如果你想直接到達的對象,試試這個:

$calendar_object = $calendars[9][0];

然後你的foreach應該工作:

foreach ($calendar_object as $calendar) { ...

不是最好的解決方案,如果它不會工作你的數組鍵(9)將改變..

您也可以嘗試更廣泛的解決方案,不管可以工作陣列關鍵指標:

 
foreach($multi as $single){ 
    foreach($single as $object){ 
     foreach($object as $calendar){ 
      // YOUR CODE HERE 
      calendar_link($calendar); // ETC… 
     }  
    } 
} 
+0

老實說,我不知道爲什麼我得到一個9,我甩了3個STD對象和他們的指望從9下降 - > 6 - > 0,然後爲我的最後目的。但感謝你的回答,我將不得不再努力一點。也許這是由負載分配的關鍵 - > var($ calendar) – GivenPie

+0

用更通用的方法更新了我的答案,該方法應該可以工作,而不管數組的關鍵指標如何。希望你能得到它的工作.. –

+0

謝謝,晚安之後休息,所有需要的是一個額外的'foreach'來挑選我需要的陣列。 – GivenPie