分享

php单例模式...

 十年的十年 2011-06-21
  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. ?>  

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多