php工厂模式

工厂模式:简单理解有一个公共方法,去new对象,所有引用都调用这个公共方法,修改文件的时候,只需要修改这一个公共方法,所有调用的都会同步更改,免去一个文件一个文件修改的麻烦
class Test1{
    static function test(){
        echo __FILE__;
    }
}
class Factory{
    /*
     * 如果某个类在很多的文件中都new ClassName(),那么万一这个类的名字
     * 发生变更或者参数发生变化,如果不使用工厂模式,就需要修改每一个PHP
     * 代码,使用了工厂模式之后,只需要修改工厂类或者方法就可以了。
     */
    static function createDatabase(){
        $test = new Test1(); //工厂模式,只需要修改这里new的类,所有调用的类就一同变化,不用每个都修改
        return $test;
    }
}

$test = Factory::createDatabase();
$test->test(); //输出类名,修改工厂类里的new所有调用即可同步改变

你可能感兴趣的:(php)