【发布时间】:2012-10-04 15:18:44
【问题描述】:
我在 PHP 中有一个父类 A 和一个子类 B。 有没有办法将 A 类的实例克隆到 B 的实例,并稍后在 B 实例中使用 B 类属性? 谢谢
【问题讨论】:
-
我不认为你可以实时扩展实例,如果这是你所要求的。不过,请考虑提供有关您正在尝试做的事情的更多详细信息,也许还有另一种方法。
标签: php class inheritance
我在 PHP 中有一个父类 A 和一个子类 B。 有没有办法将 A 类的实例克隆到 B 的实例,并稍后在 B 实例中使用 B 类属性? 谢谢
【问题讨论】:
标签: php class inheritance
我的解决方案将基于这个问题How do you copy a PHP object into a different object type的解决方案
class childClass extends parentClass
{
private $a;
private $b;
function loadFromParentObj( $parentObj )
{
$objValues = get_object_vars($parentObj); // return array of object values
foreach($objValues AS $key=>$value)
{
$this->$key = $value;
}
}
}
$myParent = new parentClass();
$myChild = new childClass();
$myChild->loadFromParentObj( $myParent );
【讨论】: