当前位置: 首页 > 图文教程 > 网络编程 > PHP > php4和php5单态模式(Singleton Pattern)写法

PHP
挑战最棒的留言本的源码(三)
php抓即时股票信息
挑战最棒的留言本的源码(四)
使用网络地址转换实现多服务器负载均衡
挑战最棒的留言本的源码(五)
屏蔽浏览器缓存另类方法
PHP脚本数据库功能详解(上)
PHP脚本数据库功能详解(中)
PHP脚本数据库功能详解(下)
一个用mysql_odbc和php写的serach数据库程序
一个简单计数器的源代码
文件上传程序的全部源码
计算2000年01月01日起到指定日的天数
通过文字传递创建的图形按钮
如何在WIN2K下安装PHP4.04
新闻分类录入、显示系统
在字符串中把网址改成超级链接
Php做的端口嗅探器--可以指定网站和端口
不用数据库的多用户文件自由上传投票系统(2)
一个简单的域名注册情况查询程序

PHP 中的 php4和php5单态模式(Singleton Pattern)写法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 329 ::
收藏到网摘: n/a

单态模式(Singleton Pattern) 就是一个类Class只有一个实例存在。(Ensure a class only has one instance, and provide a global point of access to it.)
这个是php5的写法。

以下为引用的内容:
<?php
class SingletonPhp5{
 static private $_instance=null;

 function getInstance(){
  if(! self::$_instance){
   self::$_instance=new self;
  }
  return self::$_instance;
 }

 function __construct(){

 }

 function Show(){
  echo 'Singleton on Php5';
 }
}

{
 $Singleton=SingletonPhp5::getInstance()->Show();
}

这个是php4的写法,当然此方法在php5下也可以正常运行。

以下为引用的内容:

class SingletonPhp4{      
   function &getInstance(){          
     static $_instance=array();          
     if(empty($_instance)){              
         $_instance[]= & new SingletonPhp4();  
        
}          
  return $_instance[0];      

  }
        
function SingletonPhp4(){        

}        

function Show(){          
   echo 'Singleton on Php4';      
   }  
}    

{      
   $Singleton=SingletonPhp4::getInstance();      
   $Singleton->Show();  
}