php设计模式:工厂模式,

1,工厂模式

最大的优点是:创建对象。

通俗说,以前创建对象需要使用new,现在工厂模式把这个过程封装起来了。

假设不使用工厂模式:那么很多地方调用类a,
代码就会这样子创建一个实例:new a(),假设某天需要把a类的名称修改,意味着很多调用的代码都要修改。

工厂模式:建立一个工厂(一个函数,一个方法),来制造新的对象。

比如php框架的路由,传递不同的参数,可以实例化不同的控制器类。

例子:

class DbFactory
{
    public static function factory($db_class_name)
    {
        $db_class_name = strtolower($db_class_name);
        if (include "Drivers/" . $db_class_name . ".class.php") {  //Drivers驱动数据库连接类
            $class_name = $db_class_name;
            return new $class_name;
        } else {
            throw new Exception("对应的数据库类没有找到!");
        }
    }
}

//使用方法:
$mysql = DbFactory::factory("mysql");
$oracle = DbFactory::factory("oracle");



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值