php单例模式

  1. <?php  
  2.     //单例模式的类Lock   
  3.     class  Lock  
  4.     {  
  5.         //静态属性$instance   
  6.         static   private   $instance  = NULL;  
  7.         //一个普通的成员属性   
  8.         private   $switch  = 0;  
  9.         //getInstance静态成员方法   
  10.         static   function  getInstance()  
  11.         {  
  12.             //如果对象实例还没有被创建,则创建一个新的实例   
  13.             if  (self:: $instance  == NULL)  
  14.             {  
  15.                 self::$instance  =  new  Lock();  
  16.             }  
  17.             //返回对象实例   
  18.             return  self:: $instance ;  
  19.         }  
  20.         //空构造函数   
  21.         private   function  Lock()  
  22.         {  
  23.         }  
  24.         //空克隆成员函数   
  25.         private   function  __clone()  
  26.         {     
  27.         }  
  28.         //设置$switch的函数,如果$switch为0 则将其设置成1,否则将其设置成0   
  29.         function  setLock()  
  30.         {  
  31.             if ( $this -> switch ==0)              //如果属性switch等于0,则将其设置为1   
  32.                 $this -> switch  = 1;  
  33.             else                              //如果属性switch等于1,则将其设置为0   
  34.                 $this -> switch  = 0;  
  35.         }  
  36.         //获取$switch状态   
  37.         function  getLock()  
  38.         {  
  39.             //返回switch属性   
  40.             return   $this -> switch ;  
  41.         }  
  42.     }  
  43.     //调用单例,设置$switch   
  44.     Lock::getInstance()->setLock();  
  45.     //判断开关状态   
  46.     if (Lock::getInstance()->getLock() == 0)       //如果属性switch等于0,则输出开关状态为“关”   
  47.         echo   "开关状态:关" ;  
  48.     else                                      //如果属性switch等于1,则输出开关状态为“开”   
  49.         echo   "开关状态:开" ;  
  50. ?> 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值