PHP单例模式如何设计成长尾词?
- 内容介绍
- 文章标签
- 相关推荐
本文共计272个文字,预计阅读时间需要2分钟。
首先,我要创建一个PHP单例类,使用PHP 8.23和MySQL 8.032环境。以下是简化后的代码:
phpclass Singleton{ // 静态属性保存实例 private static $obj=null;
// 私有化构造函数 private function __construct() { echo __METHOD__ . \n; }
// 公共静态方法获取实例 public static function getInstance() { if (self::$obj==null) { self::$obj=new Singleton(); } return self::$obj; }}
首先我是要php 8.23 mysql 8.032 环境下!
class Singleton{
//静态属性保存生产出来的对象
private static $obj=null;
//私有化构造方法
private function __construct()
{
echo __METHOD__."<br>";
}
//公有的静态方法
public static function getInstance(){
//判定静态属性是否存在当前类的对象
if(!(self::$obj instanceof self)){
//当前保存的OBJ 数据不是Singleton的对象
self::$obj=new self();
}
return self::$obj;
}
//私有化 克隆
private function __clone(): void{}
}
$s=Singleton::getInstance(); //静态访问
$s1=Singleton::getInstance(); //静态访问
//$s2=clone $s; //通过克隆还是会得一个新的对象 2#
var_dump($s,$s1);//得到单一的对象 而不是两个对象
本文共计272个文字,预计阅读时间需要2分钟。
首先,我要创建一个PHP单例类,使用PHP 8.23和MySQL 8.032环境。以下是简化后的代码:
phpclass Singleton{ // 静态属性保存实例 private static $obj=null;
// 私有化构造函数 private function __construct() { echo __METHOD__ . \n; }
// 公共静态方法获取实例 public static function getInstance() { if (self::$obj==null) { self::$obj=new Singleton(); } return self::$obj; }}
首先我是要php 8.23 mysql 8.032 环境下!
class Singleton{
//静态属性保存生产出来的对象
private static $obj=null;
//私有化构造方法
private function __construct()
{
echo __METHOD__."<br>";
}
//公有的静态方法
public static function getInstance(){
//判定静态属性是否存在当前类的对象
if(!(self::$obj instanceof self)){
//当前保存的OBJ 数据不是Singleton的对象
self::$obj=new self();
}
return self::$obj;
}
//私有化 克隆
private function __clone(): void{}
}
$s=Singleton::getInstance(); //静态访问
$s1=Singleton::getInstance(); //静态访问
//$s2=clone $s; //通过克隆还是会得一个新的对象 2#
var_dump($s,$s1);//得到单一的对象 而不是两个对象

