首页 > 代码库 > PHP之singleInstance
PHP之singleInstance
1 <?php 2 //单例:一个类只有一个对象。 3 //限制该类得到更多的对象,只允许产生一个对象。,一个对象就可完成所有对象的功能,目的是为了节约成本。这就是单例模式 4 5 /* 6 function func(){ 7 static $name; //局部静态变量,根据函数生命周期来进行计算,下次调用会继续存在, 8 } 9 10 class test{ 11 static $name; //属于静态类属性。 12 } 13 14 */ 15 16 class MySQLDB{ 17 //声明一个静态变量存储对象 18 private static $_instance; 19 20 //声明构造为私有不让外界new对象 21 private function __construct(){ 22 23 } 24 25 //给定一个类方法不让让类外直接通过类名去访问 26 public static function getInstance(){ 27 28 //判断对象是否被实例化 29 if (!isset(static::$_instance)) { 30 //if(! (static::$_instance instanceof static)) //用 对象运输符号 instanceof做判断 31 //不存在对象,new一个对象并返回给私有静态变量 32 static::$_instance = new static; 33 } 34 35 //返回给静态变量存储 36 return static::$_instance; 37 } 38 39 //为了防止外界的克隆 把私有魔术方法 40 private function __clone(){ 41 42 } 43 } 44 45 46 $dao = MySQLDB::getInstance(); 47 48 var_dump($dao); 49 50 $dao1 = MySQLDB::getInstance(); 51 52 var_dump($dao1); 53 54 // $dao2 = clone $dao; //运行保存/**/
PHP之singleInstance
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。