合并两个 PHP 对象的最佳方法是什么?
我们有两个 PHP5 对象,希望将其中一个对象的内容合并到第二个对象中。它们之间没有子类的概念,因此下面主题中描述的解决方案无法适用。
[如何将 PHP 对象复制到不同的对象类型中][1]
//We have this:
$objectA->a;
$objectA->b;
$objectB->c;
$objectB->d;
//We want the easiest way to get:
$objectC->a;
$objectC->b;
$objectC->c;
$objectC->d;
备注:
- 这些是对象,而不是类。
- 对象包含大量字段,因此foreach会相当慢。
- 到目前为止,我们考虑将对象 A 和 B 转换为数组,然后使用 array_merge()将它们合并,再重新转换为对象,但我们不能说我们对此感到自豪。
214
3
如果你的对象只包含字段(没有方法),这个方法也行得通:
你可以创建另一个对象,将对魔法方法的调用分派给底层对象。 下面是处理
__get
的方法,但要让它完全工作,你必须覆盖所有相关的魔法方法。 你可能会发现语法错误,因为我只是凭空输入的。祝你好运。