批改状态:未批改
老师批语:
单例模式
<?php
//单例模式,一个类只容许被实例化一次
//
class Config1 {}
$obj1 = new Config1();
$obj2 = new Config1();
var_dump($obj1 === $obj2);
echo '<hr>';
/**
*
*/
class Config
{
private static $instance = null;
//禁止从类的外部实例化对象
private function __construct()
{
}
//克隆方法也私有化
private function __clone()
{
}
//外部只允许通过一个公共静态方法来创建实例
public static function getInstance()
{
if (self::$instance == null) {
self::$instance = new self();
}
//如果已经存在当前类的实例,返回当前类的实例
return self::$instance;
}
}
$obj1 = Config::getInstance();
$obj2 = Config::getInstance();
var_dump($obj1,$obj2);
var_dump($obj1 === $obj2);
echo '<hr>';点击 "运行实例" 按钮查看在线实例
.MVC原理
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号