Heim > Artikel > Backend-Entwicklung > Codebeispiel für die Implementierung des PHP-Prototypmodus
phpPrototypmusterCodebeispiele implementiert
<?php // 原型模式 class Obj { private $name = 'obj'; } class Prototype { private $type = 'prototype'; private $obj = null; public function construct($type = null) { $this->type = $type; $this->obj = new Obj(); } public function getType() { echoLine($this->type); } public function getObj() { return $this->obj; } } $p = new Prototype('prototype'); $c = clone $p; //浅克隆 var_dump($c === $p); //false var_dump($p->getObj() === $c->getObj()); //true // ================================================== // 深克隆 function deepClone($obj) { if(!is_object($obj)) return null; return unserialize( serialize($obj) ); } $dp = deepClone($p); var_dump($dp === $p); //false var_dump($p->getObj() === $dp->getObj()); //false
Das obige ist der detaillierte Inhalt vonCodebeispiel für die Implementierung des PHP-Prototypmodus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!