php实现工厂模式

时间:2020-05-10

工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。著名的Jive论坛 ,就大量使用了工厂模式,工厂模式在Java程序系统可以说是随处可见。因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑使用工厂模式,虽然这样做,可能多做一些工作,但会给你系统带来更大的可扩展性和尽量少的修改量。

class Test1
{

}

class Test2
{

}

class Factory
{
    public static function createFactory($name)
    {
        switch (strtolower($name)) {
            case 'test1':
                return new Test1();
            case 'test2':
                return new Test2();
        }
    }
}

$test1 = Factory::createFactory('test1');
$test2 = Factory::createFactory('test2');
var_dump($test1, $test2);