php链式操作的实现方式分析


Posted in PHP onAugust 12, 2019

本文实例讲述了php链式操作的实现方式。分享给大家供大家参考,具体如下:

类似$db->where("id=1")->limit("5")->order("id desc"),链式操作的实现方式

先讲下方法的常规调用;

namespace Com;
class Database{
  function where($where){
    echo $where;
  }
  function order($order){
    echo $order;
  }
  function limit($limit){
    echo $limit;
  }
}

调用

$db = new \Com\Database();
$db->where();
$db->limit();

缺点:实现多个方法需要多行调用;

链式操作,在方法返回return $this;即可使用链式操作;

namespace Com;
class Database{
  function where($where){
    echo $where;
    return $this;
  }
  function order($order){
    echo $order;
    return $this;
  }
  function limit($limit){
    echo $limit;
    return $this;
  }
}

使用链式调用:

$db = new \Com\Database();
$db->where("id=1")->limit("5")->order("id desc");

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
分页显示Oracle数据库记录的类之二
Oct 09 PHP
PHP 在线翻译函数代码
May 07 PHP
php设计模式之观察者模式的应用详解
May 21 PHP
PHP设计模式之代理模式的深入解析
Jun 13 PHP
php数据库备份还原类分享
Mar 20 PHP
PHP中的traits实现代码复用使用实例
May 13 PHP
php单一接口的实现方法
Jun 20 PHP
php获取网站根目录物理路径的几种方法(推荐)
Mar 04 PHP
CI框架(CodeIgniter)操作redis的方法详解
Jan 25 PHP
关于php unset对json_encode的影响详解
Nov 14 PHP
Laravel自定义 封装便捷返回Json数据格式的引用方法
Sep 29 PHP
Yii框架安装简明教程
May 15 PHP
基于PHP实现微信小程序客服消息功能
Aug 12 #PHP
php swoole多进程/多线程用法示例【基于php7nts版】
Aug 12 #PHP
PHP基于swoole多进程操作示例
Aug 12 #PHP
PHP swoole和redis异步任务实现方法分析
Aug 12 #PHP
php使用pecl方式安装扩展操作示例
Aug 12 #PHP
PHP实现与java 通信的插件使用教程
Aug 11 #PHP
PHP利用DWZ.CN服务生成短网址
Aug 11 #PHP
You might like
PHP添加Xdebug扩展的方法
2014/02/12 PHP
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
2016/12/07 PHP
js 获取input点选按钮的值的方法
2014/04/14 Javascript
jquery利用命名空间移除绑定事件的方法
2015/03/11 Javascript
js获取微信版本号的方法
2015/05/12 Javascript
JS随机洗牌算法之数组随机排序
2016/03/23 Javascript
功能强大的Bootstrap使用手册(一)
2016/08/02 Javascript
AngularJS实现按钮提示与点击变色效果
2016/09/07 Javascript
浅谈javascript中的数据类型转换
2016/12/27 Javascript
jQuery插件HighCharts实现的2D面积图效果示例【附demo源码下载】
2017/03/15 Javascript
浅谈Vuejs Prop基本用法
2017/08/17 Javascript
详解给Vue2路由导航钩子和axios拦截器做个封装
2018/04/10 Javascript
vue自动化表单实例分析
2018/05/06 Javascript
vue的style绑定background-image的方式和其他变量数据的区别详解
2018/09/03 Javascript
javascript设计模式 ? 建造者模式原理与应用实例分析
2020/04/10 Javascript
javascript设计模式 ? 代理模式原理与用法实例分析
2020/04/16 Javascript
使用vue实现通过变量动态拼接url
2020/07/22 Javascript
javascript 数组(list)添加/删除的实现
2020/12/17 Javascript
使用Python的Supervisor进行进程监控以及自动启动
2014/05/29 Python
TensorFlow 滑动平均的示例代码
2018/06/19 Python
详解用python写网络爬虫-爬取新浪微博评论
2019/05/10 Python
Python 多个图同时在不同窗口显示的实现方法
2019/07/07 Python
Python线程协作threading.Condition实现过程解析
2020/03/12 Python
使用numpngw和matplotlib生成png动画的示例代码
2021/01/24 Python
使用CSS3实现字体颜色渐变的实现
2020/08/10 HTML / CSS
浅谈HTML5 defer和async的区别
2016/06/07 HTML / CSS
20佳惊艳的HTML5应用程序示例分享
2011/05/03 HTML / CSS
向全球直邮输送天然健康产品:iHerb.com
2020/05/03 全球购物
机关节能减排实施方案
2014/03/17 职场文书
美术指导求职信
2014/03/17 职场文书
互联网创业计划书写作技巧攻略
2014/03/23 职场文书
研究生毕业论文导师评语
2014/12/31 职场文书
高中同学会致辞
2015/08/01 职场文书
MySQL数据库超时设置配置的方法实例
2021/10/15 MySQL
python实现局部图像放大
2021/11/17 Python
Elasticsearch 基本查询和组合查询
2022/04/19 Python