PHP面向对象-单列模式
2015-06-13 18:24
696 查看
单例模式,在PHP面向对象中应用的比较广泛, 通常为了节省资源,在性能方面上,代码重用性上考虑,使用设计模式是很不错的选择, 比如数据库操作类系统类库等,通常开源代码都会使用单列模式去设计完成,使用单列模式的优点很明显, 可以保证每个类生成实体的唯一性,性能方面有所提高.
解释: 从列子中可以看出, 把构造函数__construct,__clone私有化, 目的是防止new和克隆一个新的对象, 然后开放getInstace这个公共的操作,让其调用保证这个对象的唯一性.
<?php header("Content-Type:text/html; charset=utf8"); /** * php设计模式 * 三:单列模式 * */ class Sigle{ protected static $instanc = null; protected function __construct(){ } public static function getInstan(){ if(self::$instanc === null){ self::$instanc = new self; } return self::$instanc; } private function __clone(){ echo 'conle'; } } $obj1 = Sigle::getInst(); $obj2 = Sigle::getInst(); if($obj1 === $obj2){ echo '是一个对象'; }else{ echo '不是一个对象'; }
解释: 从列子中可以看出, 把构造函数__construct,__clone私有化, 目的是防止new和克隆一个新的对象, 然后开放getInstace这个公共的操作,让其调用保证这个对象的唯一性.
相关文章推荐
- zend framework2 - 通过配置类加载提高性能
- Yii的getLastInsertID()注意事项
- php面向对象基础概念(对象和类)
- eclipse写php代码时中文乱码
- matplotlib画图
- php htmlentities和htmlspecialchars 的区别
- php数组随机排序实现方法
- 隐性调用php程序的方法
- PHP链接MySQL数据库
- itextpdf 应用
- oltp与olap区别
- thinkphp3.1.3导入
- Sublime Text 2 – SFTP/FTP 安装与使用
- PHP5.3.3添加安装mcrypt模块
- PHP的几种设计模式
- 关于php面向对象继承方面的几点总结
- PHP获取数组的键与值方法小结
- 自己写RTPserver——大约RTP协议
- 用PHP扩展做一个HelloWorld!
- php编译器