php工厂模式

class M1
{
    public function go()
    {
       echo "M1  go";
    }
}

class M2
{
    public function go()
    {
        echo "M2  go";
    }
}

class FactoryDisign
{
    const M1 = 'M1';
    const M2 = 'M2';

    public static function factory($param)
    {
        switch ($param) {
            case self::M1:
                return new M1();
            case self::M2:
                return new M2();
            default:
                break;
        }
    }
}

工厂模式:

在提供的一个静态方法中,根据该方法的参数来初始化类,这些类都有共同的方法,来供调用.