PHP单例模式例子

 单例模式是我们在开发中经常用到的一种设计模式,利用PHP5面向对象的特性,我们可以很容易的构建单件模式的应用,下面是单件模式在PHP中的几种实现方法:
方法一:

    class Stat{
        static $instance = NULL;
        static function getInstance(){
            if(self::$instance == NULL){
                self::$instance = new Stat();
            }
            return self::$instance;
        }
     
        private function __construct(){
        }
     
        private function __clone(){
        }    
     
        function sayHi(){
            return "Hello";
        }
    }
     
    echo Stat::getInstance()->sayHi();

    这是一种最通常的方式,在一个getInstance方法中返回唯一的类实例。

方法二:

    对这里例子稍加修改,便可以产生一个通用的方法,只要叫道任何你想用到单件的类里,就可以了。

     
    class Teacher{
     
        function sayHi(){
            return "Hello";
        }
     
        static function getInstance(){
            static $instance;
            if(!isset($instance)){
                $c = __CLASS__;
                $instance = new $c;
            }
            return $instance;
        }
    }
     
    echo Teacher::getInstance()->sayHi();


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值