91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP對象中淺復制與深復制的示例分析

發布時間:2021-07-15 10:44:42 來源:億速云 閱讀:108 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關PHP對象中淺復制與深復制的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

PHP對象的淺復制與深復制的實例詳解

最近在看原型模式時注意到這個問題~~PHP中對象 '=' 與‘clone'的區別

實例代碼:

//聚合類 
class ObjA { 
  public $num = 0; 
  public $objB;//包含的對象 
  function __construct() { 
    $this->objB = new ObjB(); 
  } 
  //只有實現了下面方法聚合類 才能實現深復制 
  /*function __clone() { 
    $this->objB = clone $this->objB; 
  }*/ 
} 
 
class ObjB { 
  public $num2 = 0; 
} 
 
//原型對象 
$objA = new ObjA(); 
 
//復制對象(‘='復制引用) 
$objA2 = $objA; 
$objA2->num = 2; 
//隨著$objA2->num的變化 $objA->num也變化了 
print_r($objA->num.'<br/>');//結果為2 
print_r($objA2->num.'<br/>');//結果為2 
 
//復制對象(‘clone'關鍵字克隆) 
$objA3 = clone $objA; 
$objA3->num = 4; 
//隨著$objA3->num的變化 $objA->num沒有變化 
print_r($objA->num.'<br/>');//結果為2 
print_r($objA3->num.'<br/>');//結果為4 
//但是clone的對象(是聚合類)中包含其他對象時所包含的對象(objB)復制的是引用 
$objA3->objB->num2 = 7; 
print_r($objA3->objB->num2.'<br/>');//結果是7 
print_r($objA->objB->num2.'<br/>');//結果是7</pre>

關于“PHP對象中淺復制與深復制的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

苍南县| 云安县| 浙江省| 论坛| 红原县| 太康县| 霍城县| 甘洛县| 阜阳市| 横峰县| 务川| 福建省| 峨边| 淳安县| 阿克苏市| 丰都县| 竹溪县| 牙克石市| 博兴县| 和田县| 子洲县| 丁青县| SHOW| 治多县| 留坝县| 富民县| 华坪县| 萨嘎县| 翁源县| 桓台县| 巍山| 纳雍县| 清远市| 嘉善县| 尚义县| 荔波县| 东丰县| 华阴市| 五常市| 肥东县| 靖宇县|