phpmodel
Ⅰ php MVC框架中modeL的作用
MVC概念来自传统的桌面软件开发,在那样的环境下,事件发生时,Model可以主动通知View,而这在HTTP协议里是不可能的(长连接comet除外啊)。长期以来,PHP业界对MVC框架中M和C的理解和运用都是不精细的(当然,够用就好,能满足绝大多数业务了)。这导致MC分层不清,PHPer在写代码的时候没有明确的规则,到底业务逻辑放在C里还是M里,常见的问题有:
C层承担职责过多,如,赞一个答案是给对应回答者加声望,写到C里面去了
M层太单薄,就继承一下框架的Model(或者DB类),实现数据库的增删查改
非数据库操作(如调用微博OpenAPI)只好包装到Util类
用户输入($_GET,$_POST)全局乱跑,M层和Util里都有
由于大部分场景下,PHP都用来做Web应用,而且是Database Driven Application,所以,各类Database Driven的快速开发框架也应运而生,比如说,CakePHP的Model类干脆就定义了CURD几个针对数据表的操作,Qcodo直接根据数据表结构自动生成MVC三层的脚手架代码。
我理解的PHP应用是5层结构,M层应再拆分为Biz Model,DAO,Infrastructure,贴几幅图片:
Ⅱ thinkphp如何创建model文件
在Model文件夹下创建啊 XxxModel.class.php
Ⅲ thinkPhP model的使用总是报错
虽然不熟悉thinkphp,建议你试一试用用方法来实例化model类,好像是D方法来实例化吧,直接new一个model
方法的话,还没include,所以出错;所有框架基本一个道理,要用的时候才include,比较节约资源,所以用下D('Admin')来实例化
Ⅳ thinkphp model 必须对应数据库表名
这个是不用必须的,可以任意命名。只是在tp里面 如果你的model命名是用数据表名字命名的话,操作的时候直接相当操作这个表。自己命名的model,自己需要指定下自己操作的表名就OK啦,不是必须的 。多看看官方手册,还是挺不错的
Ⅳ php ci框架中如何定义model
手册里应该很详情了把
在application下models下建立一个文件
在ci2里文件名应为类名的首字母小写形式例如类为User则文件名应该是user.php
ci3里要求是大写User=>User.php
下面是一个最简单的model
classUser_modelextendsCI_Model{
publicfunction__construct(){
parent::__construct();
}
}
文件名ci2user_model.php
ci3User_model.php
Ⅵ thinkphp5中的model模型层,有什么用
Thinkphp模型类的主要作用是:完成业务逻辑处理,包括对数据表的增删改查(CUED)操作。对处理的数据进行封装;对字段及属性进行验证;完成对象及属性的过滤等功能。Thinkphp模型类的命名规则:使用驼峰法命名,并且首字母大写,然后加上模型层的名称