2016-11-23 90 views
1

我需要使用PHP(Laravel)合併2個對象,其中一個是數組,另一個是普通對象,但也包含嵌套對象,有沒有簡單的方法來做到這一點?合併兩個對象,其中一個在數組內

編輯:結果應該是一個單一的對象

[ 
    { 
    "id": 1, 
    "release_date": "1998", 
    "license_plate": "098HBV", 
    "state_id": 1, 
    "type_id": 7, 
    "created_at": "2016-11-18 11:39:19", 
    "updated_at": "2016-11-18 11:39:19", 
    "deleted_at": null 
    } 
] 

{ 
    "id": 1, 
    "parent_id": null, 
    "name": "Chrysler", 
    "state_id": 1, 
    "type_id": 1, 
    "created_at": "2016-11-18 11:39:10", 
    "updated_at": "2016-11-18 11:39:10", 
    "deleted_at": null, 
    "pivot": { 
    "vehicle_id": 1, 
    "brand_id": 1 
    } 
} 

所需的輸出應該是:

{ 
    "id": 1, 
    "release_date": "1998", 
    "license_plate": "098HBV", 
    "name": "Chrysler", 

} 

它必須是類似的東西,否則會打破很多連接到第一個對象的JavaScript代碼。

+0

請參閱答案。這可以返回一個數組或一個對象。 – ksealey

+1

你可以請張貼所需的輸出嗎? –

回答

0
<?php 
    //Merge the two as an array 
    $merged = array_merge($array,(array)$object); 
    //As an object 
    $merged = (object)$merged; 
+0

恐怕這不起作用,給出錯誤消息說: array_merge():參數#1不是數組 它是從查詢中檢索的對象 $ returnData = Vehicle :: like('license_plate', $文本) - >獲得(); –

+0

該代碼假設您放入的第一個對象是一個數組,看起來像是放入對象中,交換函數中的值。在沙箱中測試,它工作正常。 – ksealey