這篇文章主要為大家詳細(xì)介紹了PHP怎樣合并兩個對象,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、大慶網(wǎng)絡(luò)推廣、小程序定制開發(fā)、大慶網(wǎng)絡(luò)營銷、大慶企業(yè)策劃、大慶品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供大慶建站搭建服務(wù),24小時服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
方法一:先將對象轉(zhuǎn)換為數(shù)據(jù)數(shù)組,然后使用array_merge()函數(shù)進(jìn)行合并,最后將合并后的數(shù)據(jù)轉(zhuǎn)換為stdClass對象。
說明:在使用array_merge()合并對象時,argument1中的數(shù)組元素將被argument2中的數(shù)組元素覆蓋。如果argument2中的數(shù)組具有空值,則這可能使最終對象中的結(jié)果元素?zé)o效。
示例:
a = 1; $objectA->b = 2; $objectA->d = 3; $objectB = new demo(); $objectB->d = 4; $objectB->e = 5; $objectB->f = 6; $obj_merged = (object) array_merge( (array) $objectA, (array) $objectB); var_dump($obj_merged); ?>
輸出:
方法二:創(chuàng)建原始類的新對象,并使用foreach循環(huán)將這兩個對象的所有屬性分配給此新對象。
說明:這是一種簡單而干凈的合并兩個對象的方法。
示例:
A = 1; $objectA->B = 2; $objectA->C = 3; $objectA->D = 4; $objectA->E = 5; $objectB = new demo(); $objectB->D = 6; $objectB->E = 7; $objectB->F = 8; // 用于轉(zhuǎn)換給定對象類的函數(shù) function convertObjectClass($objectA, $objectB, $final_class) { $new_object = new $final_class(); // 初始化類屬性 foreach($objectA as $property => $value) { $new_object->$property = $value; } foreach($objectB as $property => $value) { $new_object->$property = $value; } return $new_object; } $obj_merged = convertObjectClass($objectA,$objectB, 'demo'); var_dump($obj_merged); ?>
輸出:
以上就是PHP怎樣合并兩個對象的簡略介紹,當(dāng)然詳細(xì)使用上面的不同還得要大家自己使用過才領(lǐng)會。如果想了解更多,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道哦!