2013-05-20 272 views
1

以下是當前數組通過laravel雄辯返回的數據庫。我想推動一些東西進入陣列,我可以知道如何?陣列推另一個陣列

在返回

Company Object ( 
[attributes] => Array ( 
    [id] => 1 
    [company_name] => superman 
    [company_fullname] => Superman Ent.) 
[original] => Array ( 
    [id] => 1 
    [company_name] => superman 
    [company_fullname] => Superman Ent.) 
[relationships] => Array () 
[exists] => 1 
[includes] => Array ()) 

的數據,同時,我可以通過的foreach調用此由陣列和存取{{$ X-> COMPANY_NAME}}。我想用一些自定義信息來擴展數組,例如總成員數?

我以這種方式嘗試失敗。

$temp = array("count" => "1232"); 
array_push($companyInfo, $temp); 

我得到這個

array_push()預計參數1是數組,對象給出

更新 的公司信息陣列是由laravel回報,因爲我愚蠢的&不小心(幾天不眠之夜+ _ +)我沒有注意到一切都在裏面['屬性']!數據可以通過答案中的應用方法後面的訪問。

{{ $x['attributes']['company_name'] }} 
{{ $x[0]['count'] }} 
+1

讀取錯誤的兩倍。 – Rikesh

回答

2

$公司信息是一個對象。您需要可以指定一個命名的參數,以節省您的$臨時陣列信息:

$temp = array("count" => "1232"); 
$companyInfo->temp = $temp; 

或鑄對象到一個數組:

$temp = array("count" => "1232"); 
$companyInfo = (array) $companyInfo; 
array_push($companyInfo, $temp); 
+0

Thx。我注意到成功泵入companyInfo。但是,我可以知道如何從視圖訪問?對於companyInfo中的所有數據,[0] =>數組([count] => 1232)相同[0]。 – 1myb

+0

如果您執行$ companyInfo-> count ='1234';那麼這些數據將被保存在$ companyInfo對象中,並且您可以以$ companyInfo-> count的方式訪問它,只要該對象可供您使用。 –

+0

但計數不在companyInfo(模型對象)中,嘗試並返回「從空值創建默認對象」。如果你喜歡你做的?實際上它可能是保存但只是不能訪問 – 1myb

2

嘗試用輸出功能array_push做到這一點:

$temp = array("count" => "1232"); 
$temp[] = $companyInfo; 
你的情況

$temp = array("count" => "1232"); 
$temp['companyInfo'] = $companyInfo; 
$temp['companyInfo']->getSomeData(); 
+0

我可以知道,如果我以相反的方式添加,我如何訪問company_name? – 1myb

+0

他需要將$ temp保存到$ companyInfo中,這是一個對象。不是相反的。 –

0

你已經得到array_push錯誤,因爲你傳遞的對象,而不是數組。

你幾乎就只是做如下更改,

$companyInfo = (array)$companyInfo; 

array_push($companyInfo, $temp); 
+0

這是行不通的。你正試圖通過引用傳遞一個函數結果。推之前施展。 –