码迷,mamicode.com
首页 > Web开发 > 详细

php 单例模式

时间:2015-04-17 01:04:32      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

自学并从事跟php已经三年了,大家都说php很简单,有语言基础一周就会,其实不然,从一开始学MVC框架,THINKPHP,写代码没做太多的考虑,只要能写出功能就行,渐渐就开始迷茫了,不知道php到底有什么用,应该怎么通往一个高手的阶段,如何才能真正写出高性能的代码,最近开始接触设计模式跟苹果ios一些设计模式,思路变清晰了很多,慢慢觉得,写代码就像艺术一样,我想我刚接触这门艺术,我会好好加油,记录自己学习php的点点滴滴,
学习设计模式要真正运用到,而不是跟别人说它的厉害。自勉!
 
单例从字面意义上讲就是一个类只有一个实例,怎么保证呢?该类为private  保证不会被new,同时保证构造函数跟析构函数为private,__clone()也为private保证 不会被复制。
那我们应该如何调用实例类的方法呢,创造一个公用函数。来实现单例
 
场景:1,数据库,数据库打开连接跟关闭是很费系统资源跟内存资源的,而且数据库操作是最频繁的。
 
实例代码
 
<?php
 
 //私有类
 class  SingletonDatabase{
  private static $instance;
  private function __construct{
      mysql_connect()//数据库连接函数
  }
  private function  __deconstruct{
  echo “this is a private construct”;
  }
  public static function getInstance(){
  if(!(self::$instance instance self)){
  self:$instance=new self();
  }
  return  self::$instance;
  }
  public function query(){
  msyql_query()//数据库查询
  }
}
 
//客户端代码
SingletonDatabase::getInstance()->query();

 

php 单例模式

标签:

原文地址:http://www.cnblogs.com/varliny/p/4433745.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!