php设计模式 Prototype (原型模式)代码

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php
/**
* 原型模式
*
* 用原型实例指定创建对象的种类.并且通过拷贝这个原型来创建新的对象
*
*/
abstract class Prototype
{
private $_id = null;
public function __construct($id)
{
$this->_id = $id;
}
public function getID()
{
return $this->_id;
}
public function __clone() // magic function
{
$this->_id += 1;
}
public function getClone()
{
return clone $this;
}
}
class ConcretePrototype extends Prototype
{
}
//
$objPrototype = new ConcretePrototype(0);
$objPrototype1 = clone $objPrototype;
echo $objPrototype1->getID()."<br/>";
$objPrototype2 = $objPrototype;
echo $objPrototype2->getID()."<br/>";
$objPrototype3 = $objPrototype->getClone();
echo $objPrototype3->getID()."<br/>";

相关文章

PHP中SESSION的注销与清除

1、每个页面都必须开启session_start()后才能在每个页面里面使用session。 2、session_start()初始化session,第一次访问会生成一个唯一会话ID保...

浅析PHP7的多进程及实例源码

准备 我们都知道PHP是单进程执行的,PHP处理多并发主要是依赖服务器或PHP-FPM的多进程及它们进程的复用,但PHP实现多进程也意义重大,尤其是在后台Cli模式下处理大量数据或运行...

基于PHP的cURL快速入门教程 (小偷采集程序)

基于PHP的cURL快速入门教程 (小偷采集程序)

最爽的是,PHP也支持 cURL 库。本文将介绍 cURL 的一些高级特性,以及在PHP中如何运用它。 为什么要用 cURL? 是的,我们可以通过其他办法获取网页内容。大多数时候,我因...

PHP基于自定义类随机生成姓名的方法示例

本文实例讲述了PHP基于自定义类随机生成姓名的方法。分享给大家供大家参考,具体如下: 自定义类rndChinaName.class.php: <?php Class r...

站长助手-网站web在线管理程序 v1.0 下载

大小格式:34KB/RAR  软件语言:简体中文  应用平台:ASP环境  软件授权:免费版  没有FTP软件也可以随时随地管理网站的文件(上传、...