Erlo

php单例模式

2018-10-17 16:47:03 发布   213 浏览  
页面报错/反馈
收藏 点赞

一:定义

   php单例模式可以保证系统中一个类只有一个实例,通俗的讲就是实例化出来的类是唯一的。

二:类

<?php
class single{
    static private $instance; //创建静态的私有变量保存该类对象
    //防止直接创建对象
    private function __construct()
    {
        echo "我被实例化了";
    }
    //防止克隆对象
    private function __clone()
    {

    }
    static public function getInstance()
    {
        //判断是否已经创建对象
        if(!self::$instance instanceof self)
        {
            self::$instance = new self();
        }
        return self::$instance;
    }
}
$db1 = single::getInstance();
$db2 = single::getInstance();

运行结果:

  $db1创建对象后,输出结果为:我被实例化了。

  $db2没有创建对象,而是直接使用$instance保存的唯一对象,所以并没有输出“我被实例化了”这句话。

登录查看全部

参与评论

评论留言

还没有评论留言,赶紧来抢楼吧~~

手机查看

返回顶部

给这篇文章打个标签吧~

棒极了 糟糕透顶 好文章 PHP JAVA JS 小程序 Python SEO MySql 确认