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 相关文章推荐
建立动态的WML站点(一)
Oct 09 PHP
php magic_quotes_gpc的一点认识与分析
Aug 18 PHP
php中常用字符串处理代码片段整理
Nov 07 PHP
php ctype函数中文翻译和示例
Mar 21 PHP
php获取当月最后一天函数分享
Feb 02 PHP
php数组键值用法实例分析
Feb 27 PHP
php 魔术常量详解及实例代码
Dec 04 PHP
thinkPHP js文件中U方法不被解析问题的解决方法
Dec 05 PHP
Yii2中hasOne、hasMany及多对多关联查询的用法详解
Feb 15 PHP
PHP实现电商订单自动确认收货redis队列
May 17 PHP
PHP十六进制颜色随机生成器功能示例
Jul 24 PHP
php计数排序算法的实现代码(附四个实例代码)
Mar 31 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代码
2008/09/10 PHP
php mysql_real_escape_string函数用法与实例教程
2013/09/30 PHP
php过滤html中的其他网站链接的方法(域名白名单功能)
2014/04/24 PHP
PHP中strcmp()和strcasecmp()函数字符串比较用法分析
2016/01/07 PHP
CodeIgniter 完美解决URL含有中文字符串
2016/05/13 PHP
Yii框架中使用PHPExcel的方法分析
2019/07/25 PHP
javascript 兼容鼠标滚轮事件
2009/04/07 Javascript
javascript获取当前ip的代码
2009/05/10 Javascript
javascript设计模式 封装和信息隐藏(上)
2012/07/24 Javascript
jquery实现div拖拽宽度示例代码
2013/07/31 Javascript
jquery图形密码实现方法
2015/03/11 Javascript
AngularJS中使用HTML5手机摄像头拍照
2016/02/22 Javascript
Vue.JS入门教程之事件监听
2016/12/01 Javascript
JavaScript ES6中const、let与var的对比详解
2017/06/18 Javascript
基于JavaScript实现图片连播和联级菜单实例代码
2017/07/28 Javascript
浅谈vue中使用图片懒加载vue-lazyload插件详细指南
2017/10/23 Javascript
[04:09]2018年度DOTA2社区贡献奖-完美盛典
2018/12/16 DOTA
[04:03][TI9趣味短片] 小鸽子茶话会
2019/08/20 DOTA
python网络编程学习笔记(八):XML生成与解析(DOM、ElementTree)
2014/06/09 Python
Hadoop中的Python框架的使用指南
2015/04/22 Python
python实现读取并显示图片的两种方法
2017/01/13 Python
浅谈Django自定义模板标签template_tags的用处
2017/12/20 Python
Python实现二维数组输出为图片
2018/04/03 Python
python配置grpc环境
2019/01/01 Python
Django中使用MySQL5.5的教程
2019/12/18 Python
python继承threading.Thread实现有返回值的子类实例
2020/05/02 Python
使用tensorflow根据输入更改tensor shape
2020/06/23 Python
python中time、datetime模块的使用
2020/12/14 Python
HTML5移动端手机网站开发流程
2016/04/25 HTML / CSS
在C语言中"指针和数组等价"到底是什么意思?
2014/03/24 面试题
九年级数学教学反思
2014/02/02 职场文书
物业管理专业求职信
2014/06/11 职场文书
奖学金感谢信
2015/01/21 职场文书
关于召开会议的通知
2015/04/15 职场文书
带你了解CSS基础知识,样式
2021/07/21 HTML / CSS
JavaScript流程控制(循环)
2021/12/06 Javascript