用PHP开始你的MVC Model层.docVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用PHP开始你的MVC Model层

用PHP开始你的MVC(三)实现你的Model层 三、实现你的Mode层 Model层,就是MVC模式中的数据处理层,用来进行数据和商业逻辑的装封,进行他的设计的时候设计到三个个概念: ------Model类。是实体类。用来保存数据库表格的中一条记录的所有字段的数据。并且可以验证这条记录数据的完整性。 ------ModelManager 类。?是实体类的管理类。通常每一个实体类(Model)都要有一个对应的管理类(ModelManager)。管理类可以用来管理实体类里面的数据纪录 (例如删除/添加/更改.....)。?但是ModelManager类不一定要有对应的Model类。 ------db类。?用来管理对数据库的联接。?ModelManager类所有的对数据的操作。都是通过这个db类来实现的。?在整个MVC模式中。只有这个db类可以直接对数据库进行操作。同时也只有ModelManager类可以对db类进行调用。 看上去好象是比较麻烦。但是实际上并不复杂。这种Model层设计方式。和网上购物系统的购物车程序是极其相似的。Model可以看作是购物车里的单个商品的信息类。Manager可以看作是订单。?订单是用来管理采购的商品的。 下面是一个简单的例子。应该是比较典型的。着重看他的整个设计和流程的实现。仔细研究一下。其实不难。 注意:下面例子使用的所有的类和方法都是经过简化的。实际情况比这个要复杂的多。但是。作为一个实例已经是足够用了。 文件夹结构: |-?Db.php |-?Model.php |-?Manager.php |-?ModelTest1.php |-?ModelTest2.php |-?ModelTest3.php |-?ModelTest4.php |-?Model?/ |-?Model?/?ClassModel.php |-?Model?/?StudentModel.php |-?Model?/?ClassManager.php |-?Model?/?StudentManager.php 注意文件夹和文件名的大小写 内容:假设有一个数据库,保存在两张表,一张是class(班级)表格,一张是student(学生)的表格, class表格字段:??cls_id----------int--------not?null ????????????????????cls_name--------string-----not?null ????????????????????cls_address-----string-----null student表格字段:stu_id----------int--------not?null ???? stu_clsid-------int--------not?null ???? ?? stu_name--------string-----null ClassModel.php?里面是class表的一个实体类ClassModel ClassManager.php?里面是ClassModel的管理类ClassManager StudentModel.php?里面是student表的一个实体类StudentModel StudentManager.php?里面是StudentModel的管理类StudentManager Db.php?里面是一个数据库操作管理类,他和里面用的接口和正常使用情况是一样的,?但是本例只是模拟的实现了这个借口.因此,可以在不用真实数据库的情况下运行. 文件0:(Model.php)Model层实体的基础类 ?php //用来包装信息实体的基础类 class?Model{ ????//这个实体类的数据, ????//example:?array(id=1,?name=this?is?name); ????var?$data; ????//这个实体类的数据约束信息,用来判断加入的$data数据的准确性 ????//see:?ClassModel ????var?$match; ????//与该实体对应的数据库中表的名称 ????var?$table; ????//初始化 ????function?Model($data){ ????????$this-data?=?$data; ????} ????//设置该实体的某个数据是值 ????function?set($key,?$value){ ????????$this-data[$key]?=?$value; ????} ????//获取该实体的某个数据 ????function?get($key){ ????????return?$this-data[$key]

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档