美文网首页
php设计模式(一)单例、工厂

php设计模式(一)单例、工厂

作者: mafa1993 | 来源:发表于2022-06-19 21:37 被阅读0次

    我们首先讲,单例、工厂模式,两个最最基本的设计模式

    设计模式中常用的魔术方法

    1. __get/__set 访问不存在的属性时
    2. __call(fun_name,para)/__callStatic 访问类不存在的方法时调用
    3. __tostring 将对象当做字符串时,调用,比如echo一个对象
    4. __invoke($param) 将对象当做函数使用的时候调用

    工厂模式

    1. 如果一个类发生名字、参数等修改,可以直接在工厂里修改,不用在每个new的地方修改
    class Factory {
        static function createDB(){
            return new DataBases();
        }
    }
    

    单例模式

    1. 多次实例化和一次实例化效果一致,节省资源
    class DataBases{
    
        static private $db;
        // 防止new
        private function __construct(){
            
        }
        private function __clone(){}
        
        static public function instance(){
            if(!self::$db){
                self::$db = new self();
            }
    
            return self::$db;
        }
        
    }
    
    DataBases::instance();
    

    相关文章

      网友评论

          本文标题:php设计模式(一)单例、工厂

          本文链接:https://www.haomeiwen.com/subject/jifdvrtx.html