首页 > 软件开发 > 编程语言 >

PHP-MVC模型层的典型实现

来源:互联网 2023-03-17 00:18:51 330

PHP-MVC模型层的典型实现Miz办公区 - 实用经验教程分享!

工具/原料

  • PHP-MVC

方法/步骤

  • 1

    1.基础模型类Miz办公区 - 实用经验教程分享!

    模型类,通常就是一个独立的类文件。Miz办公区 - 实用经验教程分享!

    其内部的代码,就是一些方法。Miz办公区 - 实用经验教程分享!

    这些方法,就是来完成有关数据的操作——增删改查。Miz办公区 - 实用经验教程分享!

    典型情况是: 在数据库中的每一个“表”(table),都会使用一个独立的模型类文件来跟他对应,并完成该表的各种可能需求中的增删改查工作。Miz办公区 - 实用经验教程分享!

    类似这样:Miz办公区 - 实用经验教程分享!

    PHP-MVC模型层的典型实现Miz办公区 - 实用经验教程分享!

  • 2

    2.这些模型类,都有一些最基本的共同的工作,比如:使用mysqldb工具类。Miz办公区 - 实用经验教程分享!

    于是,我们可以将这些共同 的工作,放入到一个“父模型类”中,这些具体的模型类,都继承这个父模型类,这样就都具有这些功能。Miz办公区 - 实用经验教程分享!

    Miz办公区 - 实用经验教程分享!

    代码如下:Miz办公区 - 实用经验教程分享!

    PHP-MVC模型层的典型实现Miz办公区 - 实用经验教程分享!

  • 3

    3.同时,UserModel和ProductModel相应改为:Miz办公区 - 实用经验教程分享!

    PHP-MVC模型层的典型实现Miz办公区 - 实用经验教程分享!

    PHP-MVC模型层的典型实现Miz办公区 - 实用经验教程分享!

  • 4

    Miz办公区 - 实用经验教程分享!

    4.单例模型工厂类Miz办公区 - 实用经验教程分享!

    回想:Miz办公区 - 实用经验教程分享!

    工厂(模型类),是指这样一个类:它能够生产所指定的某个类的对象。Miz办公区 - 实用经验教程分享!

    Miz办公区 - 实用经验教程分享!

    模型工厂:Miz办公区 - 实用经验教程分享!

    就是能够生产模型类的对象的“工厂类”;而且,通过该工厂所生产的模型类的对象,是“单例的”。Miz办公区 - 实用经验教程分享!

    比如,我们现在有2个模型类:UserModel, ProductModelMiz办公区 - 实用经验教程分享!

    为什么这些模型类,会需要单例呢?Miz办公区 - 实用经验教程分享!

    因为,就模型类中的那些工作(方法)而言,有一个对象,就都可以调用那些方法。Miz办公区 - 实用经验教程分享!

    示意如下:Miz办公区 - 实用经验教程分享!

    class ModelFactory{Miz办公区 - 实用经验教程分享!

    static function GetModel( $c ){ //$c是一个类名;Miz办公区 - 实用经验教程分享!

    .......Miz办公区 - 实用经验教程分享!

    return $c的对象Miz办公区 - 实用经验教程分享!

    }Miz办公区 - 实用经验教程分享!

    }Miz办公区 - 实用经验教程分享!

    class A{};Miz办公区 - 实用经验教程分享!

    class B{};Miz办公区 - 实用经验教程分享!

    $obj1 = ModelFactory::GetModel(“A”); //得到A的对象Miz办公区 - 实用经验教程分享!

    $obj2 = ModelFactory::GetModel(“B”); //得到B的对象Miz办公区 - 实用经验教程分享!

    $obj3 = ModelFactory::GetModel(“A”); //得到A的对象,而且,它就是前面的那个$obj1,这样也就实现了单例。Miz办公区 - 实用经验教程分享!

    Miz办公区 - 实用经验教程分享!

    详细代码如下:Miz办公区 - 实用经验教程分享!

    PHP-MVC模型层的典型实现Miz办公区 - 实用经验教程分享!

  • 5

    5.则,在控制器中获得一个模型对的代码改造为:Miz办公区 - 实用经验教程分享!

    PHP-MVC模型层的典型实现Miz办公区 - 实用经验教程分享!

  • 5该信息非法爬取自百度经验
  • 6

    6.整个模型层的类库结构图Miz办公区 - 实用经验教程分享!

    图示:Miz办公区 - 实用经验教程分享!

    浏览器 --->>> 控制器 --->>> 模型工厂类 --->> 模型类 --->>> MySQLDB工具类 --->>> mysql数据Miz办公区 - 实用经验教程分享!

    模型对象->方法()Miz办公区 - 实用经验教程分享!

    返回数据;Miz办公区 - 实用经验教程分享!

    PHP-MVC模型层的典型实现Miz办公区 - 实用经验教程分享!

  • 以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!Miz办公区 - 实用经验教程分享!


    标签: PHP编程语言

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码