自定义MVC框架-工厂类

栏目: 后端 · 发布时间: 5年前

内容简介:当前代码中,所有的模型类都是开发者手动实例化的,就好比你需要一辆汽车,还得自己制造一辆汽车使用工厂模式,开发者不需要再手动创建类的对象,只需要向相关类(汽车制造厂商)要对象(汽车)即可实现方式

当前代码中,所有的模型类都是开发者手动实例化的,就好比你需要一辆汽车,还得自己制造一辆汽车

使用工厂模式,开发者不需要再手动创建类的对象,只需要向相关类(汽车制造厂商)要对象(汽车)即可

实现方式

在 framewok\core 下创建 Facotry 类

namespace framework\core;
class Factory
{
    public static function M($classname)
    {
        static $model_list = [];
        /**
         * 为类名加上命名空间的原因在于前台和后台有同名的模型类
         */
        $modelname = MODULE . "\\model\\" . $classname;
        echo $modelname;
        if (!isset($model_list[$modelname])) {
            $model_list[$modelname] = new $modelname;
        }
        return $model_list[$modelname];
    }
}

在控制器中只需要调用Factory 类中的 M 方法传入类名即可。当然需要在控制器类中引入工厂类的命名空间

自定义MVC框架-工厂类


以上所述就是小编给大家介绍的《自定义MVC框架-工厂类》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

突破——程序员如何练就领导力

突破——程序员如何练就领导力

刘朋 / 电子工业出版社 / 2018-8-31 / 55.00元

内容简介: 在今日中国如雨后春笋般出现的各种新兴的互联网和软件公司中,有越来越多的技术达人凭借在技术上的优异表现而被晋升为技术团队的管理者和领导者。然而,从技术到管理——从单枪匹马的个人贡献者到一呼百应的技术团队领导者——注定是“惊险的一跃”。对于刚走上技术团队管理岗位的技术专家,你一定遇到过和本书作者当年一样的各种困惑和不适“症状”: ——我能处理好人“机”关系,但是如何处理好人际关......一起来看看 《突破——程序员如何练就领导力》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

html转js在线工具
html转js在线工具

html转js在线工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具