文档章节

TP5 model类研究

Zero_初始化
 Zero_初始化
发布于 2017/09/08 09:11
字数 295
阅读 20
收藏 0
点赞 0
评论 0

model类研究

仅做开发笔记,若有不足之处,请指出

  • 简介

我们都知道thinkphp5增删改查的函数返回的都是模型对象

他与tp3.2是有区别的,现在主要研究该模型的运行机制和调用方法。

那么问题来了:

为什么数据可以通过数组或者对象调用方式进行获取数据?

探究魔法变量__get、__set、__isset、__toString还有tp5的getData方法。

 

参考: PHP中__get()和__set()的用法实例详解
    PHP实现对象属性按数组方式访问

 

  • 实例解释
<?php
namespace app\index\controller;

use app\common\model\Users;
class Index
{
  //对象可以通过数组形式获取数据
    public function testObj()
    {
        //获取用户ID为124
        $res = Users::get(124);
        //由于model接口ArrayAccess->自动调用offsetGet()将调用数组的键作为参数,若不传键则会返回全部数据getData();
        //使用数组形式调用对象
         echo $res['id'];//offsetGet()->getData('id');
         echo $res->id; //_get->getData('id')
         if(isset($res['id']));  //调用魔法变量isset
         if($res['id']);       //调用魔法变量isset
         echo $res;            //自动调用__tostring
    }
}
?>

 

于此为记

参考文献:http://blog.csdn.net/qq_15096707/article/details/62227624

© 著作权归作者所有

共有 人打赏支持
Zero_初始化
粉丝 0
博文 4
码字总数 1312
作品 0
广州
程序员
Laravel5.2之Model Observer模型观察者

说明:本文主要学习下Laravel的Model Observer模型观察者,把一点点经验分享出来希望对别人能有帮助。同时,会将开发过程中的一些截图和代码黏上去,提高阅读效率。 备注:上一篇文章:Larav...

botkenni ⋅ 2016/10/22 ⋅ 0

Model.modifyFlag请教

@JFinal 你好,想跟你请教个问题:最近研究折腾Model,研究了好久也没弄明白Model.modifyFlag的工作原理是啥。知道是用来判断model中字段是否修改过的,但不知道它是怎么工作的,也没找到它工...

ramnight ⋅ 2014/12/22 ⋅ 1

NotePad++ 语法高亮 INC 文件

最近在学习 NASM 汇编语言,文本编辑器用的 NotePad++。汇编源代码以 .nas 为扩展名,NotePad++ 不能正确语法高亮显示。打开菜单项“设置 -> 语言格式设置”,在“语言”列表中找到“Assembl...

四彩 ⋅ 2015/11/05 ⋅ 0

anwsion问答系统研究笔记

anwsion /app/文件夹下是action 所有action类都继承/system/中的基类AWSCONTROLLER /models/文件夹下是models models的基类是AWSMODEL /views/文件夹下是模板 框架核心代码在/system/中 工具...

lilugirl ⋅ 2013/03/22 ⋅ 0

聊聊Android开发中的MVP模式

一、初识MVP(Model View Presenter) google上关于MVP模式的资料已经特别多了,所以我这里也不啰嗦了。 因为之前做过的几个项目,每个Activity的所有操作代码全部都是堆在里面,虽然查找还算方...

silencezwm ⋅ 2017/11/12 ⋅ 0

【政策】北京市科委发布最新征集新一代人工智能、脑认知与类脑技术等六大领域储备课题

去年,在国家层面频频出台一系列人工智能发展规划政策后,2018年地方进入政策落地实施阶段。 11日,北京市科委发布六份通知,征集2018年六大技术领域储备课题,这六大领域分别为: ①认知与类...

技术小能手 ⋅ 01/12 ⋅ 0

关于档案系统使用jfinal框架,多条件查询分页问题!

@JFinal 你好,想请教您个问题:比如说现在我们有个档案系统,光一个查询就有很我查询条件的,在分页这块做了封装了一个分页处理类,将查询条件邦定到分页中,处理完成后,然后通过model返回...

Role ⋅ 2015/06/15 ⋅ 1

华盛顿大学成立SAML实验室:陈天奇参与,推进未来AI系统全栈研究

安妮 发自 凹非寺 量子位 出品 | 公众号 QbitAI △ 陈天奇 昨天,TVM、XGBoost、cxxnet等机器学习工具的作者陈天奇宣布,自己所在的华盛顿大学新成立了一个实验室,组织代号“SAML”。 ...

yh0vlde8vg8ep9vge ⋅ 05/08 ⋅ 0

服用避孕药改变你的理想型?调查发现并非如此

  一项新的研究发现,异性恋女性倾向于青睐更为传统的阳刚的男性面孔,并且这种偏好与她们是否口服避孕药无关。   本周《心理科学》(Psychological Science)上的一篇新论文表示,以往关...

DeepTech深科技 ⋅ 05/10 ⋅ 0

【javascript激增的思考04】MVC与Backbone.js(beta)

前言 最近整理了很多前端面试题的东西,今天又去参加了一次面试,不知各位烦不烦,我反正有点累了,于是我们今天继续回到我们前段时间研究的问题,我们再来看看MVC吧。 什么是MVC 又回到这个...

范大脚脚 ⋅ 2017/12/21 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

NFS介绍 NFS服务端安装配置 NFS配置选项

NFS介绍 NFS是Network File System的缩写;这个文件系统是基于网路层面,通过网络层面实现数据同步 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导...

lyy549745 ⋅ 34分钟前 ⋅ 0

Spring AOP 源码分析 - 筛选合适的通知器

1.简介 从本篇文章开始,我将会对 Spring AOP 部分的源码进行分析。本文是 Spring AOP 源码分析系列文章的第二篇,本文主要分析 Spring AOP 是如何为目标 bean 筛选出合适的通知器(Advisor...

java高级架构牛人 ⋅ 57分钟前 ⋅ 0

HTML-标签手册

标签 描述 <!--...--> 定义注释。 <!DOCTYPE> 定义文档类型。 <a> 定义锚。超链接 <abbr> 定义缩写。 <acronym> 定义只取首字母的缩写。 <address> 定义文档作者或拥有者的联系信息。 <apple......

ZHAO_JH ⋅ 58分钟前 ⋅ 0

SylixOS在t_main中使用硬浮点方法

问题描述 在某些使用场景中,应用程序不使用动态加载的方式执行,而是跟随BSP在 t_main 线程中启动,此时应用代码是跟随 BSP 进行编译的。由于 BSP 默认使用软浮点,所以会导致应用代码中的浮...

zhywxyy ⋅ 今天 ⋅ 0

JsBridge原理分析

看了这个Github代码 https://github.com/lzyzsd/JsBridge,想起N年前比较火的Hybrid方案,想看看现在跨平台调用实现有什么新的实现方式。代码看下来之后发现确实有点独特之处,这里先把核心的...

Kingguary ⋅ 今天 ⋅ 0

Intellij IDEA神器常用技巧五-真正常用快捷键(收藏级)

如果你觉得前面几篇博文太啰嗦,下面是博主多年使用Intellij IDEA真正常用快捷键,建议收藏!!! sout,System.out.println()快捷键 fori,for循环快捷键 psvm,main方法快捷键 Alt+Home,导...

Mkeeper ⋅ 今天 ⋅ 0

Java 静态代码分析工具简要分析与使用

本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest),最后从功能、特性等方面对它们进行分析和比较,...

Oo若离oO ⋅ 今天 ⋅ 0

SpringBoot自动配置小记

spring-boot项目的特色就在于它的自动配置,自动配置就是开箱即用的本源。 不过支持一个子项目的自动配置,往往比较复杂,无论是sping自己的项目,还是第三方的,都是如此。刚接触会有点乱乱...

大_于 ⋅ 今天 ⋅ 0

React jsx 中写更优雅、直观的条件运算符

在这篇文字中我学到了很多知识,同时结合工作中的一些经验也在思考一些东西。比如条件运算符 Conditional Operator condition ? expr_if_true : expr_if_false 在jsx中书写条件语句我们经常都...

开源中国最帅没有之一 ⋅ 今天 ⋅ 0

vim编辑模式与命令模式

5.5 进入编辑模式 从编辑模式返回一般模式“Esc” 5.6 vim命令模式 命令 :“nohl”=no high light 无高亮,取消内容中高亮标记 "x":保存退出,和wq的区别是,当进入一个文件未进行编辑时,使...

弓正 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部