博客列表 >PHP设计模式学习笔记——单例模式

PHP设计模式学习笔记——单例模式

青Blue的博客
青Blue的博客原创
2020年07月01日 22:34:58619浏览

实例

<?php
/**
* @                       .::::.
* @                     .::::::::.
* @                    :::::::::::
* @                 ..:::::::::::'
* @              '::::::::::::'
* @                .::::::::::
* @           '::::::::::::::..
* @                ..::::::::::::.
* @              ``::::::::::::::::
* @               ::::``:::::::::'        .:::.
* @              ::::'   ':::::'       .::::::::.
* @            .::::'      ::::     .:::::::'::::.
* @           .:::'       :::::  .:::::::::' ':::::.
* @          .::'        :::::.:::::::::'      ':::::.
* @         .::'         ::::::::::::::'         ``::::.
* @     ...:::           ::::::::::::'              ``::.
* @    ````':.          ':::::::::'                  ::::..
* @                       '.:::::'                    ':'````..
* @
* @Description: 单例模式,用在数据库连接,cookie操作,读取配置文件等
* @Author: luoxiaojin
* @Date: 2020-06-29 14:50:10
* @LastEditors: luoxiaojin
* @LastEditTime: 2020-06-29 14:50:51
* @FilePath: \design_patterns\l4.php
*/

class Sigle{
    private static $obj = null;
    final private function __construct(){
        // 
    }

    final private function __clone(){
        // 
    }
    
    public static function init(){
        if(self::$obj !== null){
            return self::$obj;
        }else{
            self::$obj = new self();
            return self::$obj;
        }
    }
}

$s1 = Sigle::init();
// var_dump($s1);
$s2 = Sigle::init();



echo $s1 === $s2;

运行实例 »

点击 "运行实例" 按钮查看在线实例

——学习参考与 bilibili燕十八 面向对象与设计模式

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议