thinkphp3.2【model模型】

【连接数据库配置】

convertion.php

config.php

1. 在config.php做数据库连接配置

 thinkphp3.2【model模型】_第1张图片

2. 制作model模型

a) model本身就是一个类文件

b) 数据库中的每个数据表都对应一个model模型文件

c) 最简单的数据model模型类

 thinkphp3.2【model模型】_第2张图片

3. 字段缓存设置

tp框架执行过程中会使用到数据表中的字段信息,通过sql语句可以查询”show colums from table”  ,处于性能考虑,可以把字段缓存,避免每次重复执行sql语句。

 thinkphp3.2【model模型】_第3张图片

4. 可以根据情况对当前的model模型进行个性化设置

 thinkphp3.2【model模型】_第4张图片

5. 在入口文件定义一个调试输出函数,便于系统开发使用

 thinkphp3.2【model模型】_第5张图片

 

【实例化model的三种方式】

1. $goods =  new  命名空间GoodsModel();  

2. $goods = D(‘模型标志’);    

a) $goods = D(“Goods”);

b) 该$goods是父类Model的对象,但是操作的数据表还是sw_goods

c) $obj = D();  实例化Model对象,没有具体操作数据表,与M()方法效果一致

3. $obj = M();

a) 实例化父类Model

b) 可以直接调用父类Model里边的属性,获得数据库相关操作

c) 自定义model就是一个空壳,没有必要实例化自定义model

d) $obj = M(‘数据表标志’);  实例化Model对象,实际操作具体的数据表

$obj = D(标志);

$obj = D();

$obj = M(标志);

$obj = M();

D()M()方法的区别:

前者是tp3.1.3里边对new操作的简化方法;

后者在使用就是实例化Model父类

两者都在函数库文件定义ThinkPHP/Common/functions.php

 thinkphp3.2【model模型】_第6张图片

 

注意:如果没有对应的model模型文件类,也可以直接实例化model对象进行操作

D()M()方法都可以实例化操作一个没有具体model模型类文件的数据表。

你可能感兴趣的:(TP,and,OTP)