<?php# 定义一个形象办法abstract class PubAction{    abstract public function index();    public function demo(){    }}#如果继承抽象类,那么抽象类中的形象办法,必须要全副实现# 定义一个A类  继承 抽象类class A extends PubAction{    public function index()    {        return "我是A中的办法";    }}# 定义一个B类 继承 抽象类class B extends PubAction{    public function index()    {        return "我是B中的办法";    }}# 定义工厂类class Factory{    # 定义 一个公共的静态方法 用来创建对象 public static function index($str)    {        if($str == "A")        {            return new A;        }else if($str == "B")        {            return new B;        }else{            return "没有此类";        }    }}$obj = Factory::index("A");# 判断是否是一个对象,如果是一个对象则输入一个公共的办法if(is_object($obj)){    echo $obj->index();}else{    echo $obj;}# 应用工厂模式,益处是只须要将对应的信息传递到工厂类中,即可生产出一个对应的对象。 毛病是:如果每减少一个类就须要创立一个具体的类和对象来实现工厂。