【Laravel 设计模式-----------单例模式】

单例模式,最初我自己的理解是,一个PHP文件即为一个类,不要用多个类放在一个PHP文件。这是极其的片面,并没有理解其中的缘由,单例模式的好处也没有理解。
在此集百家之所长,汇聚前人们的理解。哈哈,让我学习了一些。

单例模式好处是:对象不可以外部实例化,只能实例化一次,节省资源。

实现方式:
该实现方式引用于 简书
解读:
声明一个类的私有或者保护的静态变量,构造方法声明为私有(不允许外部进行new操作),如果不存在则实例化它,然后返回,如果存在则直接返回。

private static $ins = null;                                                //设置私有的属性

private function __construct() {}                                       //使外部无法new这个类

public static function getIns() {                                        //暴露给外部的调用方法

        if(self::$ins instanceof self) {

                return self::$ins;

        } else {

                self::$ins = new self();

                return self::$ins;

        }

}

简单说来,单例模式的作用就是保证在整个应用程序的生命周期中,任何一个时刻,单例类的实例都只存在一个,同时这个类还必须提供一个访问该类的全局访问点。

常见使用实例:数据库连接器;日志记录器(如果有多种用途使用多例模式);锁定文件。

猜你喜欢

转载自blog.csdn.net/cuiliwu/article/details/80528221