thinkphp5 模型实例化获得数据对象的教程

2025-05-29 0 93

模型对象和数据对象理解

1. 模型对象:模型类实例化后获得的对象;

2. 数据对象:获取到了原始数据的模型对象;

原始数据:存放在模型对象的$data属性中($data是一个数组)

数据对象:说到底,还是一个模型对象,千万不要认为是一个全新的对象

DB操作返回是数组。

模型直接操作返回是对象。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72
//该对象共计有28个受保护属性,必须在本类或子类中使用,外部不能直接使用

object(app\\index\\model\\Staff)#5 (28) {

//数据库配置数组

["connection":protected] => array(0) {

}

//数据库查询对象,负责最终完成对数据库的操作

["query":protected] => NULL

//模型名称 ,创建时自动赋值

["name":protected] => string(5) "Staff"

//与模型绑定的数据表的完整名称(包括前缀的表名,如:tp5_staff)

["table":protected] => NULL

//用命名空间表示的、当前的模型类名:Staff

["class":protected] => string(21) "app\\index\\model\\Staff"

//出错时显示的信息

["error":protected] => NULL

//字段验证规则

["validate":protected] => NULL

//数据表主键

["pk":protected] => NULL

//数据表字段名列表(与数据表对应)

["field":protected] => array(0) {

}

//只读字段列表

["readonly":protected] => array(0) {

}

//显示字段列表

["visible":protected] => array(0) {

}

//隐藏属性字段列表

["hidden":protected] => array(0) {

}

//追加属性列表

["append":protected] => array(0) {

}

//与数据表字段对应的信息列表(极其重要)

["data":protected] => array(0) {

}

//字段修改信息列表

["change":protected] => array(0) {

}

//自动完成列表

["auto":protected] => array(0) {

}

//新增自动完成列表

["insert":protected] => array(0) {

}

//更新自动完成列表

["update":protected] => array(0) {

}

// 是否需要自动写入时间戳 如果设置为字符串 则表示时间字段的类型

["autoWriteTimestamp":protected] => bool(false)

//设置表中:创建时间字段的名称

["createTime":protected] => string(11) "create_time"

//设置表中:更新时间字段的名称

["updateTime":protected] => string(11) "update_time"

//设置表中:时间字段的格式

["dateFormat":protected] => string(11) "Y-m-d H:i:s"

//数据表中各字段类型定义

["type":protected] => array(0) {

}

//是否是:更新操作

["isUpdate":protected] => bool(false)

//更新条件

["updateWhere":protected] => NULL

//当前执行的关联条件

["relation":protected] => NULL

//验证失败是否抛出异常

["failException":protected] => bool(false)

//全局查询范围设置

["useGlobalScope":protected] => bool(true)

}

当我们用select()进行查询得出的结果无法toarray的时候,下面的方法就用得上了。

对象类型转换数组

打开 database.php 增加或修改参数

?

1
'resultset_type' => '\\think\\Collection',

即可连贯操作

?

1
model('user')->select()->toArray()

以上这篇thinkphp5 模型实例化获得数据对象的教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持快网idc。

原文链接:https://blog.csdn.net/qazx123q/article/details/79549649

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 thinkphp5 模型实例化获得数据对象的教程 https://www.kuaiidc.com/91675.html

相关文章

发表评论
暂无评论