在php中合并两个对象

在php中合并两个对象,php,object,Php,Object,我使用一个API将我返回到给定如下数组的电子邮件地址: stdClass Object ( [status] => OK [contact] => stdClass Object ( [id] => 0000000 [email] => toto@free.fr [last_activity] => 1362131446 [last_update] => 0

我使用一个API将我返回到给定如下数组的电子邮件地址:

stdClass Object ( [status] => OK [contact] => stdClass Object ( [id] => 0000000 [email] => toto@free.fr [last_activity] => 1362131446 [last_update] => 0 [created_at] => 1356617740 [sent] => 5 [open] => 1 [click] => 1 [spam] => 0 [bounce] => 0 [blocked] => 0 [queued] => 0 ) [lists] => Array ( [0] => stdClass Object ( [active] => 1 [unsub] => 1 [unsub_at] => 1363078528 ) ) ) stdClass对象 ( [状态]=>正常 [联系人]=>stdClass对象 ( [id]=>0000000 [电子邮件]=>toto@free.fr [上次活动]=>1362131446 [上次更新]=>0 [创建时间]=>1356617740 [已发送]=>5 [打开]=>1 [单击]=>1 [垃圾邮件]=>0 [反弹]=>0 [被阻止]=>0 [排队]=>0 ) [列表]=>阵列 ( [0]=>stdClass对象 ( [活动]=>1 [不明嫌犯]=>1 [不明嫌犯电话]=>1363078528 ) ) ) 如何将信息[联系人]与[列表][0]合并到单个对象中

谢谢你的帮助

$info = yourstuff;
$arrContact = (array) $info->contact;
$arrList = (array) $info->lists[0];
$merged = array_merge($arrContact, $arrList);
var_dump($merged, 'have fun');
相当琐碎;)

怎么样:

foreach ($info->lists[0] as $key => $value {
  $info->contact->$key = $value;
}

避免在数组和对象之间来回投射

我喜欢再次将其投射到对象的想法。可惜我以前没有想到。无法将stdClass类型的对象用作array@MaxLeps这就是为什么他在使用前使用铸造。选中这一行:
$c=(对象)数组\u合并((数组)$a,(数组)$b)foreach ($info->lists[0] as $key => $value {
  $info->contact->$key = $value;
}