php 设计模式之单例模式例子
发布:smiling 来源: PHP粉丝网 添加日期:2016-07-27 13:23:05 浏览: 评论:0
单例模式这个东西我相信有许多的朋友都不了解了,今天既然有学习到单例模式我就给各位整理一些小编学习用到的参考内容供各位学习。
1.定义
单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统全局地提供这个实例。它不会创建实例副本,而是会向单例类内部存储的实例返回一个引用。
2.解决的问题/使用场景
在数据库应用方面,使用单例模式,可以避免大量的new操作消耗的资源。
如果在系统中需要一个类来全局控制某些配置信息,那么使用单例模式可以很方便的实现。
3.实现单例模式的要点
需要一个保存类的唯一实例的静态成员变量。
构造函数和克隆函数必须声明为私有的,防止外部程序new类从而失去单例模式的意义。
需要提供一个访问这个实例的静态方法(一般为getInstance方法),返回实例的引用。
4.实现代码示例
- <?php
- class Singleton
- {
- private static $instance;
- private $conn;
- private function __construct()
- {
- $this->conn = mysql_connect(...);
- }
- private function __clone()
- {
- }
- public static function GetInstance()
- {
- if (!(self::$instance instanceof self))
- {
- slef::$instance = new self();
- }
- return self::$instance;
- //phpfensi.com
- }
- public function GetDbConnect()
- {
- return $this->conn;
- }
- public function selectData($sql)
- {
- // $result mysql_query($sql,$this->conn);
- // while mysql_fetch_array($result)....
- }
- }
- $db = Singleton::GetInstance();
- $db->selectData("select * from user");
- ?>
Tags: php设计模式 php单例模式
- 上一篇:php验证身份证号码是否正确函数
- 下一篇:PHP设计模式装饰器模式实例
相关文章
- ·php设计模式——单例模式(Singleton)的常见应用场景(2015-04-15)
- ·PHP设计模式之:单例模式的学习笔记(2016-07-29)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)