扫码关注官方订阅号
像thinkPHP的PHP开发框架都会封装数据库的操作类,会出现方法调用方法的情况,如下代码:
M('Test')->where(['status'=>1])->field('id,name')->select();
这种实现方式是什么思想呢,有没有对应的具体技术名词呢?
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
链式调用, 通过返回$this实现.
$this
写个demo给你:
<?php /** * 简单的加减法计算类 * * @author Flc <2016-11-23 19:32:26> */ class Calc { /** * 结果 * @var integer */ protected $result = 0; /** * 加法 * @param number $value */ public function add($value) { $this->result += $value; return $this; } /** * 减法 * @param number $value */ public function sub($value) { $this->result -= $value; return $this; } /** * 返回结果 * @return [type] [description] */ public function result() { return $this->result; } } $calc = new Calc; echo $calc ->add(1) ->add(2) ->sub(1) ->add(11) ->result();
重点就是每个方法的return $this;
return $this;
MVC模型的原理可以去了解一下。然后再去看下关于类的封装。
M('Test')其实相当于定义了一个 TestModel 的类.
M('Test')->where(),则是调用该类里面的where方法。
主要的难点还是在于对MVC模型的实现吧。这个是关于MVC模型实现的一个教程,可以去看一下。https://www.shiyanlou.com/cou...
链式调用,返回$this就ok了,你可以参考下各种ORM框架
链式操作么,每次返回的是一个对象
链式操作,返回$this,方法的调用
链式操作
楼上的都说的对。我补个连接把。
http://blog.csdn.net/zhengwish/article/details/51742880
链式调用 每次都返回对象
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
链式调用, 通过返回
$this实现.写个demo给你:
MVC模型的原理可以去了解一下。
然后再去看下关于类的封装。
M('Test')其实相当于定义了一个 TestModel 的类.
M('Test')->where(),则是调用该类里面的where方法。
主要的难点还是在于对MVC模型的实现吧。
这个是关于MVC模型实现的一个教程,可以去看一下。
https://www.shiyanlou.com/cou...
链式调用,返回$this就ok了,你可以参考下各种ORM框架
链式操作么,每次返回的是一个对象
链式操作,返回$this,方法的调用
链式操作
楼上的都说的对。我补个连接把。
链式调用 每次都返回对象