zoukankan      html  css  js  c++  java
  • PHP单例模式

    <?php
    
    /**
     * PHP的单例模式:让类的一个对象成为系统中的唯一实例,避免大量的 new 操作消耗的资源。典型应用:数据库连接
     * PHP的单例模式实现要求:
     * 1、一个private的__construct是必须的,单例类不能在其它类中实例化,只能被自身实例化;
     * 2、拥有一个保存类的实例的静态成员变量;
     * 3、一个静态的公共方法用于实例化这个类,并访问这个类的实例;
     */
    class Demo
    {
        private static $ins; //保存对象的静态属性
    
        private function __construct()
        {
            echo "私有化构造方法<br>";
        }
    
        //禁止克隆
        private function __clone()
        {
        }
    
        public static function getInstance()
        {
            if (!(self::$ins instanceof self)) {
                echo "实例化<br>";
                self::$ins = new self;
            }
            return self::$ins;
        }
    
        //类的其它方法
        public function test()
        {
            echo "测试方法<br>";
        }
    }
    
    //多次调用类的实例
    Demo::getInstance()->test();
    Demo::getInstance()->test();
    
    //输出结果
    /*
    实例化
    这是构造方法
    测试方法
    测试方法
    */
    
    //通过结果,可以看到Demo类只实例化了一次。
  • 相关阅读:
    MyEclipse 2016CI破解版for Mac
    关于Mac系统中my sql 和navicat for mysql 的连接问题。
    二分总结
    递推总结
    区间DP学习笔记 6/20
    搜索考试
    模板整理
    防线 2020/3/31
    JS 循环遍历JSON数据
    pm am 12小时格式化
  • 原文地址:https://www.cnblogs.com/rxbook/p/10385099.html
Copyright © 2011-2022 走看看