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


Posted in PHP onOctober 18, 2019

模型对象和数据对象理解

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

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

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

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

DB操作返回是数组。

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

//该对象共计有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 增加或修改参数

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

即可连贯操作

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

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

PHP 相关文章推荐
纯php打造的tab选项卡效果代码(不用js)
Dec 29 PHP
php数字转汉字代码(算法)
Oct 08 PHP
Yii 快速,安全,专业的PHP框架
Sep 03 PHP
深入分析PHP引用(&)
Sep 04 PHP
thinkphp备份数据库的方法分享
Jan 04 PHP
php采集自中央气象台范围覆盖全国的天气预报代码实例
Jan 04 PHP
10个php函数实用却不常见
Oct 13 PHP
浅谈PHP拦截器之__set()与__get()的理解与使用方法
Oct 18 PHP
php 微信开发获取用户信息如何实现
Dec 13 PHP
php strftime函数的详细用法
Jun 21 PHP
tp5实现微信小程序多图片上传到服务器功能
Jul 16 PHP
PhpSpreadsheet中文文档 | Spreadsheet操作教程实例
Apr 01 PHP
使用tp框架和SQL语句查询数据表中的某字段包含某值
Oct 18 #PHP
tp5 sum某个字段相加得到总数的例子
Oct 18 #PHP
基于laravel belongsTo使用详解
Oct 18 #PHP
浅谈laravel 5.6 安装 windows上使用composer的安装过程
Oct 18 #PHP
Laravel 框架返回状态拦截代码
Oct 18 #PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
Oct 17 #PHP
Mac下关于PHP环境和扩展的安装详解
Oct 17 #PHP
You might like
php 网页游戏开发入门教程一(webgame+design)
2009/10/26 PHP
php中jQuery插件autocomplate的简单使用笔记
2012/06/14 PHP
php抽象方法和抽象类实例分析
2016/12/07 PHP
swoole和websocket简单聊天室开发
2017/11/18 PHP
用js判断浏览器是否是IE的比较好的办法
2007/05/08 Javascript
js 设置选中行的样式的实现代码
2010/05/24 Javascript
仿微博字符限制效果实现代码
2012/04/20 Javascript
js跨浏览器实现将字符串转化为xml对象的方法
2013/09/25 Javascript
JS 作用域与作用域链详解
2015/04/07 Javascript
jQuery+CSS3+Html5实现弹出层效果实例代码(附源码下载)
2016/05/16 Javascript
JavaScript模板引擎Template.js使用详解
2016/12/15 Javascript
js实现显示手机号码效果
2017/03/09 Javascript
react-router实现跳转传值的方法示例
2017/05/27 Javascript
jquery ztree实现右键收藏功能
2017/11/20 jQuery
JS中call和apply函数用法实例分析
2018/06/20 Javascript
es6 symbol的实现方法示例
2019/04/02 Javascript
编写v-for循环的技巧汇总
2020/12/01 Javascript
原生js实现无缝轮播图效果
2021/01/28 Javascript
二种python发送邮件实例讲解(python发邮件附件可以使用email模块实现)
2013/12/03 Python
pandas全表查询定位某个值所在行列的方法
2018/04/12 Python
python视频按帧截取图片工具
2019/07/23 Python
Python实现二叉搜索树BST的方法示例
2019/07/30 Python
Python使用Pandas对csv文件进行数据处理的方法
2019/08/01 Python
python实现在线翻译功能
2020/03/03 Python
PyTorch之nn.ReLU与F.ReLU的区别介绍
2020/06/27 Python
Python xlwings插入Excel图片的实现方法
2021/02/26 Python
澳大利亚宠物食品和用品商店:PETstock
2020/01/02 全球购物
办公室前台的岗位职责
2013/12/20 职场文书
开办加工厂创业计划书
2014/01/03 职场文书
黄河的主人教学反思
2014/02/07 职场文书
公司保密承诺书
2014/03/27 职场文书
求职信的正确写法
2014/07/10 职场文书
2014年个人债务授权委托书范本
2014/09/22 职场文书
高三复习计划
2015/01/19 职场文书
2016年猴年新春致辞
2015/08/01 职场文书
详解GaussDB for MySQL性能优化
2021/05/18 MySQL