PHP实现链式操作的原理详解


Posted in PHP onSeptember 16, 2016

在一个类中有多个方法,当你实例化这个类,并调用方法时只能一个一个调用,类似:

db.php

<?php

class db
{
public function where()
{
//code here
}
public function order()
{
//code here
}
public function limit()
{
//code here
}
}

index.php

<?php

$db = new db();

$db->where();
$db->order();
$db->limit();

如果要实现链式调用,这要在方法的结束添加return $this即可。

db.php

<?php

class db
{
public function where()
{
//code here
return $this;
}
public function order()
{
//code here
return $this;
}
public function limit()
{
//code here
return $this;
}
}

index.php

<?php

$db = new db();

$db->where()->order()->limit();

以上这篇PHP实现链式操作的原理详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
我的论坛源代码(二)
Oct 09 PHP
require(),include(),require_once()和include_once()区别
Mar 27 PHP
ThinkPHP php 框架学习笔记
Oct 30 PHP
php 接口类与抽象类的实际作用
Nov 26 PHP
php 记录进行累加并显示总时长为秒的结果
Nov 04 PHP
VIM中设置php自动缩进为4个空格的方法详解
Jun 14 PHP
php分页代码学习示例分享
Feb 20 PHP
PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
Mar 17 PHP
smarty模板判断数组为空的方法
Jun 10 PHP
php+Ajax处理xml与json格式数据的方法示例
Mar 04 PHP
PHP token验证生成原理实例分析
Jun 05 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
Apr 14 PHP
详解PHP中websocket的使用方法
Sep 15 #PHP
PHP简单实现上一页下一页功能示例
Sep 14 #PHP
PHP自定义函数格式化json数据示例
Sep 14 #PHP
ThinkPHP中session函数详解
Sep 14 #PHP
PHP大神的十大优良习惯
Sep 14 #PHP
thinkPHP的表达式查询用法详解
Sep 14 #PHP
PHP实现对二维数组某个键排序的方法
Sep 14 #PHP
You might like
浅谈PHP调用Webservice思路及源码分享
2014/06/04 PHP
ThinkPHP验证码和分页实例教程
2014/08/22 PHP
详解在PHP的Yii框架中使用行为Behaviors的方法
2016/03/18 PHP
Laravel框架路由和控制器的绑定操作方法
2018/06/12 PHP
Laravel使用Queue队列的技巧汇总
2019/09/02 PHP
Yii框架中用response保存cookie,用request读取cookie的原理解析
2019/09/04 PHP
漂亮的widgets,支持换肤和后期开发新皮肤(2007-4-27已更新1.7alpha)
2007/04/27 Javascript
Firefox getBoxObjectFor getBoundingClientRect联系
2008/10/26 Javascript
prototype与jquery下Ajax实现的差别
2009/09/13 Javascript
jQuery 工具函数学习资料
2010/04/29 Javascript
Raphael带文本标签可拖动的图形实现代码
2013/02/20 Javascript
一个简单的jQuery计算器实现了连续计算功能
2014/07/21 Javascript
JavaScript判断一个字符串是否包含指定子字符串的方法
2015/03/18 Javascript
基于jquery实现放大镜效果
2015/08/17 Javascript
简单的网页广告特效实例
2017/08/19 Javascript
JavaScript类的继承操作实例总结
2018/12/20 Javascript
js实现指定时间倒计时效果
2019/08/26 Javascript
VUE 实现动态给对象增加属性,并触发视图更新操作示例
2019/11/29 Javascript
extjs图形绘制之饼图实现方法分析
2020/03/06 Javascript
详解Python中的多线程编程
2015/04/09 Python
Python的自动化部署模块Fabric的安装及使用指南
2016/01/19 Python
Python中使用haystack实现django全文检索搜索引擎功能
2017/08/26 Python
快速解决安装python没有scripts文件夹的问题
2018/04/03 Python
Python Selenium 之关闭窗口close与quit的方法
2019/02/13 Python
python实现自动化上线脚本的示例
2019/07/01 Python
OpenCV3.0+Python3.6实现特定颜色的物体追踪
2019/07/23 Python
Django应用程序入口WSGIHandler源码解析
2019/08/05 Python
利用python、tensorflow、opencv、pyqt5实现人脸实时签到系统
2019/09/25 Python
python tkinter 设置窗口大小不可缩放实例
2020/03/04 Python
django template实现定义临时变量,自定义赋值、自增实例
2020/07/12 Python
通俗易懂了解Python装饰器原理
2020/09/17 Python
新教师岗前培训方案
2014/06/05 职场文书
个人查摆问题整改措施
2014/10/04 职场文书
预防艾滋病宣传活动总结
2015/05/09 职场文书
2016年“5.12”护士节致辞
2015/07/31 职场文书
vue+elementUI实现表格列的显示与隐藏
2022/04/13 Vue.js