php单例模式实现对象只被创建一次

php单例模式实现对象只被创建一次,第1张

概述这是我在php面试题中遇到的一道试题,单例模式按字面来看就是某一个类只有一个实例,这样做的好处还是很大的,比如说数据库的连接,我们只需要实例化一次,不需要每次都去new了,这样极大的降低了资源的耗费。单例类至少拥有以下三种公共元素:  必须拥有一个构造函数,并且必须被标记为pri

这是我在PHP面试题中遇到的一道试题,单例模式按字面来看就是某一个类只有一个实例,这样做的好处还是很大的,比如说数据库的连接,我们只需要实例化一次,不需要每次都去new了,这样极大的降低了资源的耗费。

单例类至少拥有以下三种公共元素:

    必须拥有一个构造函数,并且必须被标记为private。
    拥有一个保存类的实例的静态成员变量。
    拥有一个访问这个实例的公共的静态方法

具体使用方面,我在下面PHP实例中注释的很清楚:

 

<?PHP

/**

 * by www.PHPddt.com

 */

class MysqL{

//该属性用来保存实例

private static $conn;

//构造函数为private,防止创建对象

private function __construct(){

$this->conn = MysqL_connect('localhost','root','');

}

//创建一个用来实例化对象的方法

public static function getInstance(){

if(!(self::$conn instanceof self)){

self::$conn = new self;

}

return self::$conn;

}

//防止对象被复制

public function __clone(){

trigger_error('Clone is not allowed !');

}

 

}

//只能这样取得实例,不能new 和 clone

$MysqL = MysqL::getInstance();

?>

总结

以上是内存溢出为你收集整理的php单例模式实现对象只被创建一次全部内容,希望文章能够帮你解决php单例模式实现对象只被创建一次所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1167404.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存