• 技术文章 >后端开发 >php教程

    php对象克隆的实现方法

    小云云小云云2018-03-07 10:10:21原创711
    有的时候我们需要在一个项目里面,使用两个或多个一样的对象,如果你使用“new” 关键字重新创建对象的话,再赋值上相同的属性,这样做比较烦琐而且也容易出错,所以要 根据一个对象完全克隆出一个一模一样的对象,是非常有必要的,而且克隆以后,两个对象 互不干扰。 本文主要和大家分享php对象克隆的实现方法,希望能帮助到大家。

    <?php 
      //定义类staff,其中包括属性id和name 
      class staff  
      { 
       private $id; 
       private $name; 
       function setID($id)  
       { 
         $this->id = $id; 
       } 
       function getID()  
       { 
         return $this->id; 
       } 
       function setName($name)  
       { 
         $this->name = $name; 
       } 
       function getName()  
       { 
         return $this->name; 
       } 
      } 
      //创建一个新的staff对象并初始化 
      $ee1 = new staff(); 
      $ee1->setID("145"); 
      $ee1->setName("Simon"); 
      //克隆一个新的对象 
      $ee2 = clone $ee1; 
      //重新设置新对象的ID值 
      $ee2->setID("146"); 
      //输出ee1和ee2 
      echo "ee1 ID: ".$ee1->getID()."<br data-filtered="filtered">"; 
      echo "ee1 Name: ".$ee1->getName()."<br data-filtered="filtered">"; 
      echo "ee2 ID: ".$ee2->getID()."<br data-filtered="filtered">"; 
      echo "ee2 Name: ".$ee2->getName()."<br data-filtered="filtered">"; 
    ?>

    <?php 
      //定义类staff,其中包括属性id和name 
      class staff  
      { 
       private $id; 
       private $name; 
       function setID($id)  
       { 
         $this->id = $id; 
       } 
       function getID()  
       { 
         return $this->id; 
       } 
       function setName($name)  
       { 
         $this->name = $name; 
       } 
       function getName()  
       { 
         return $this->name; 
       } 
       //这里是__clone函数 
       function __clone() 
       { 
        $this->id = $this->id + 1; 
       } 
      } 
      //创建一个新的staff对象并初始化 
      $ee1 = new staff(); 
      $ee1->setID("145"); 
      $ee1->setName("Simon"); 
      //克隆一个新的对象 
      $ee2 = clone $ee1; 
      //重新设置新对象的ID值 
      //$ee2->setID("146"); 
      //输出ee1和ee2 
      echo "ee1 ID: ".$ee1->getID()."<br>"; 
      echo "ee1 Name: ".$ee1->getName()."<br>"; 
      echo "ee2 ID: ".$ee2->getID()."<br>"; 
      echo "ee2 Name: ".$ee2->getName()."<br>"; 
    ?>

    相关推荐:

    php克隆对象是什么?它是如何实现的?

    php克隆对象clone的使用方法

    php实现对象克隆的方法,php对象克隆_PHP教程

    以上就是php对象克隆的实现方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 方法 实现
    上一篇:PHP错误处理方法实例 下一篇:php计算mysql数据库大小的代码分享
    Web大前端开发直播班

    相关文章推荐

    • 深入浅析PHP文件包含漏洞• WampServer下安装多个版本的PHP、mysql、apache图文教程_PHP• win7下memCache的安装过程(具体操作步骤)_PHP• 解析如何屏蔽php中的phpinfo()函数_PHP• php页面消耗内存过大的处理办法_PHP
    1/1

    PHP中文网