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 相关文章推荐
Search Engine Friendly的URL设计
Oct 09 PHP
如何在PHP中使用Oracle数据库(3)
Oct 09 PHP
PHP批量生成静态HTML的简单原理和方法
Apr 20 PHP
简单解决新浪SAE无法上传文件的问题
May 13 PHP
Smarty简单生成表单元素的方法示例
May 23 PHP
详解PHP原生DOM对象操作XML的方法
Oct 17 PHP
Python中使用django form表单验证的方法
Jan 16 PHP
利用PHP访问带有密码的Redis方法示例
Feb 09 PHP
PDO::getAttribute讲解
Jan 28 PHP
PHP实现微信退款的方法示例
Mar 26 PHP
PHP模版引擎原理、定义与用法实例
Mar 29 PHP
PHP面向对象程序设计__tostring()和__invoke()用法分析
Jun 12 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版 汉字转码的实现详解
2013/06/09 PHP
解决php接收shell返回的结果中文乱码问题
2014/01/23 PHP
使用Huagepage和PGO来提升PHP7的执行性能
2015/11/30 PHP
php通过两层过滤获取留言内容的方法
2016/07/11 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
PHP实现模拟http请求的方法分析
2017/12/20 PHP
Laravel等框架模型关联的可用性浅析
2019/12/15 PHP
js类型检查实现代码
2010/10/29 Javascript
JavaScript学习笔记(一) js基本语法
2011/10/25 Javascript
EASYUI TREEGRID异步加载数据实现方法
2012/08/22 Javascript
轻松学习Javascript闭包函数
2015/12/15 Javascript
JS弹出窗口的运用与技巧大全
2016/11/01 Javascript
bootstrap网格系统使用方法解析
2017/01/13 Javascript
jQuery实现文档树效果
2017/02/20 Javascript
layer弹出层中H5播放器全屏出错的解决方法
2017/02/21 Javascript
JavaScript函数节流的两种写法
2017/04/07 Javascript
NodeJS创建最简单的HTTP服务器
2017/05/15 NodeJs
vue-cli项目中使用echarts图表实例
2018/10/22 Javascript
vue-cli 3 全局过滤器的实例代码详解
2019/06/03 Javascript
vue项目前端微信JSAPI与外部H5支付相关实现过程及常见问题
2020/04/14 Javascript
Python装饰器使用实例:验证参数合法性
2015/06/24 Python
Python网络编程详解
2017/10/31 Python
对numpy中数组元素的统一赋值实例
2018/04/04 Python
python爬虫_实现校园网自动重连脚本的教程
2018/04/22 Python
用Pycharm实现鼠标滚轮控制字体大小的方法
2019/01/15 Python
python实现两个dict合并与计算操作示例
2019/07/01 Python
使用python将多个excel文件合并到同一个文件的方法
2019/07/09 Python
详解CSS3的opacity属性设置透明效果的用法
2016/05/09 HTML / CSS
无故旷工检讨书
2014/01/26 职场文书
师德师风演讲稿
2014/05/05 职场文书
优秀员工推荐信
2014/05/10 职场文书
校园运动会广播稿
2015/08/19 职场文书
2016学习全国教书育人楷模先进事迹心得体会
2016/01/21 职场文书
JS监听Esc 键触发事键
2021/04/14 Javascript
thinkphp 获取控制器及控制器方法
2021/04/16 PHP
MySQL选择合适的备份策略和备份工具
2022/06/01 MySQL