关于PHP中单例模式的实现-php教程

资源魔 21 0
因为我之前是做java开发的,正在应用单例模式的时分,起首想到的想用饿汉式,而后发如今PHP中,有这样一个特点:由于PHP没有支持正在类界说时给类的成员变量付与非根本类型的值。如表白式,new操作等等。转而想要确保这个单例模式的原子性,发现PHP中也不像JAVA中的线程平安成绩。

嘿嘿,你说PHP好欠好?那末OK接上去就尝尝PHP的懒汉式单例模式了。

相干保举:《PHP教程》

1、三私一公:

①、公有动态属性,又来贮存天生的惟一工具

②、公有结构函数

③、公有克隆函数,避免克隆——clone

④、公共动态办法,用来拜访动态属性贮存的工具,假如不工具,则天生此单例

2、要害词instanceof

反省此变量能否为该类的工具、子类、或是完成接口。

一、一个private的__construct是必需的,单例类不克不及正在其它类中实例化,只能被本身实例化;

二、领有一个保留类的实例的动态成员变量;

三、一个动态的公共办法用于实例化这个类,并拜访这个类的实例;

  class SingleInstance{
        
        private function _construct(){
            
        }
        
       private static $instance;
       
       private function _clone(){
           
       }
       public static function getInstance(){
           
           if(!self::$instance instanceof SingleInstance){
               self::$instance=new SingleInstance();
           }
           return self ::$instance;
           
       }
       
    }

以上就是对于PHP中单例模式的完成的具体内容,更多请存眷资源魔其它相干文章!

标签: php开发教程 php开发资料 php开发自学 PHP单例模式

抱歉,评论功能暂时关闭!