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 相关文章推荐
超级简单的发送邮件程序
Oct 09 PHP
NOD32 v2.70.32 简体中文封装版 提供下载了
Feb 27 PHP
PHP校验ISBN码的函数代码
Jan 17 PHP
PHP设计模式之代理模式的深入解析
Jun 13 PHP
PHP5.3与5.5废弃与过期函数整理汇总
Jul 10 PHP
通过php添加xml文档内容的方法
Jan 23 PHP
PHP整合PayPal支付
Jun 11 PHP
10个php函数实用却不常见
Oct 13 PHP
php脚本守护进程原理与实现方法详解
Jul 20 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
Aug 11 PHP
yii2 url重写并隐藏index.php方法
Dec 10 PHP
PHP simplexml_import_dom()函数讲解
Feb 03 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
用ODBC的分页显示
2006/10/09 PHP
谈谈新手如何学习PHP
2006/12/14 PHP
PHP中session变量的销毁
2014/02/27 PHP
php的dl函数用法实例
2014/11/06 PHP
ThinkPHP中__initialize()和类的构造函数__construct()用法分析
2014/11/29 PHP
Laravel框架中实现使用阿里云ACE缓存服务
2015/02/10 PHP
Yii2 rbac权限控制操作步骤实例教程
2016/04/29 PHP
PHP抽象类基本用法示例
2018/12/28 PHP
javascript中巧用“闭包”实现程序的暂停执行功能
2007/04/04 Javascript
关于jquery动态增减控件的一些想法和小插件
2010/08/01 Javascript
js中iframe调用父页面的方法
2014/10/30 Javascript
Javascript编程之继承实例汇总
2015/11/28 Javascript
提高Node.js性能的应用技巧分享
2017/08/10 Javascript
JS中数组与对象的遍历方法实例小结
2018/08/14 Javascript
微信小程序实现跑马灯效果
2020/10/21 Javascript
vue中利用Promise封装jsonp并调取数据
2019/06/18 Javascript
SpringBoot+Vue 前后端合并部署的配置方法
2020/12/30 Vue.js
[01:07:21]NAVI vs VG Supermajor 败者组 BO3 第二场 6.5
2018/06/06 DOTA
[01:20:47]DOTA2-DPC中国联赛 正赛 Ehome vs Magma BO3 第一场 1月19日
2021/03/11 DOTA
python生成器的使用方法
2013/11/21 Python
利用打码兔和超人打码自封装的打码类分享
2014/03/16 Python
python动态网页批量爬取
2016/02/14 Python
Python实现读取txt文件并画三维图简单代码示例
2017/12/09 Python
Python数据分析之双色球中蓝红球分析统计示例
2018/02/03 Python
python3.6的venv模块使用详解
2018/08/01 Python
布隆过滤器的概述及Python实现方法
2019/12/08 Python
Python实现使用dir获取类的方法列表
2019/12/24 Python
PyTorch安装与基本使用详解
2020/08/31 Python
Giglio德国网上精品店:奢侈品服装和配件
2016/09/23 全球购物
伦敦剧院门票:From The Box Office
2018/06/30 全球购物
英国网上自行车商店:Tredz Bikes
2019/10/29 全球购物
2015秋季新学期开学寄语
2015/05/28 职场文书
美丽人生观后感
2015/06/03 职场文书
常用的MongoDB查询语句的示例代码
2021/07/25 MongoDB
详解使用内网穿透工具Ngrok代理本地服务
2022/03/31 Servers
PostgreSQL常用字符串分割函数整理汇总
2022/07/07 PostgreSQL