如何快速学习:[1]Swift编程语言,Swift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Ojective-C*共同运行于MacOS和iOS平台,用于搭建基于苹果平台的应用程......
2023-03-17 354 编程语言
PHP-MVC模型层的典型实现
1.基础模型类
模型类,通常就是一个独立的类文件。
其内部的代码,就是一些方法。
这些方法,就是来完成有关数据的操作——增删改查。
典型情况是: 在数据库中的每一个“表”(table),都会使用一个独立的模型类文件来跟他对应,并完成该表的各种可能需求中的增删改查工作。
类似这样:
2.这些模型类,都有一些最基本的共同的工作,比如:使用mysqldb工具类。
于是,我们可以将这些共同 的工作,放入到一个“父模型类”中,这些具体的模型类,都继承这个父模型类,这样就都具有这些功能。
代码如下:
3.同时,UserModel和ProductModel相应改为:
4.单例模型工厂类
回想:
工厂(模型类),是指这样一个类:它能够生产所指定的某个类的对象。
模型工厂:
就是能够生产模型类的对象的“工厂类”;而且,通过该工厂所生产的模型类的对象,是“单例的”。
比如,我们现在有2个模型类:UserModel, ProductModel
为什么这些模型类,会需要单例呢?
因为,就模型类中的那些工作(方法)而言,有一个对象,就都可以调用那些方法。
示意如下:
class ModelFactory{
static function GetModel( $c ){ //$c是一个类名;
.......
return $c的对象
}
}
class A{};
class B{};
$obj1 = ModelFactory::GetModel(“A”); //得到A的对象
$obj2 = ModelFactory::GetModel(“B”); //得到B的对象
$obj3 = ModelFactory::GetModel(“A”); //得到A的对象,而且,它就是前面的那个$obj1,这样也就实现了单例。
详细代码如下:
5.则,在控制器中获得一个模型对的代码改造为:
6.整个模型层的类库结构图
图示:
浏览器 --->>> 控制器 --->>> 模型工厂类 --->> 模型类 --->>> MySQLDB工具类 --->>> mysql数据
模型对象->方法()
返回数据;
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
相关文章
如何快速学习:[1]Swift编程语言,Swift,苹果于2014年WWDC(苹果开发者大会)发布的新开发语言,可与Ojective-C*共同运行于MacOS和iOS平台,用于搭建基于苹果平台的应用程......
2023-03-17 354 编程语言
web图表开发工具FineReport:[11]连续分组,数据库表数据是按照时间先后录入的,查询的时候希望按照时间先后,某个字段连续相同的话就合并起来显示,这样的报表可以通过相邻连续分组来实现。......
2023-03-17 579 编程语言