首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将PHP对象复制到不同的对象类型中?

如何将PHP对象复制到不同的对象类型中?
EN

Stack Overflow用户
提问于 2018-08-29 01:30:10
回答 2查看 0关注 0票数 0
  1. 新类是原始对象的子类
  2. 它需要兼容php4
EN

回答 2

Stack Overflow用户

发布于 2018-08-29 10:15:04

一个php对象与数组并不完全不同,并且因为所有PHP 4对象变量都是公共的,所以你可以做一些像这样的乱码:

function clone($object, $class)
{
     $new = new $class();
     foreach ($object as $key => $value)
     {
          $new->$key = $value;
     }
     return $new;
}
$mySubclassObject = clone($myObject, 'mySubclass');

它不漂亮,而且它不是我认为的好习惯,但它可重复使用的,而且它非常整洁。

票数 0
EN

Stack Overflow用户

发布于 2018-08-29 11:09:32

您可以将类实例化为空,然后通过任意数量的方法加载。其中一个方法可以接受父类的实例作为参数,然后从那里复制其数据

class childClass extends parentClass
{
    function childClass()
    {
        //do nothing
    }

    function loadFromParentObj( $parentObj )
    {
        $this->a = $parentObj->a;
        $this->b = $parentObj->b;
        $this->c = $parentObj->c;
    }
};

$myParent = new parentClass();
$myChild = new childClass();
$myChild->loadFromParentObj( $myParent );
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100000684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档