PHP实现链式操作的核心思想


Posted in PHP onJune 23, 2015

PHP 链式操作的实现

 

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

 

在 Common 下创建 Database.php。

链式操作最核心的地方在于:在方法的最后 return $this;

Database.php:

<?php
namespace Common;

class Database{
  function where($where){
    return $this;  //链式方法最核心的地方在于:在每一个方法之后 return $this
  }
  function order($order){
    return $this;
  }
  function limit($limit){
    return $this;
  }
}

index.php:

<?php
define('BASEDIR',__DIR__); //定义根目录常量
include BASEDIR.'/Common/Loader.php';
spl_autoload_register('\\Common\\Loader::autoload');

$db = new \Common\Database(); 

//传统的操作需要多行代码实现
//$db->where('id = 1');
//$db->where('name = 2');
//$db->order('id desc');
//$db->limit(10);

//使用链式操作,一行代码解决问题
$db->where('id = 1')->where('name = 2')->order('id desc')->limit(10);

在使用链式操作时,ide(netbeans 会给出自动提示):

 PHP实现链式操作的核心思想

PHP 相关文章推荐
用PHP读注册表
Oct 09 PHP
Apache, PHP在Windows 9x/NT下的安装与配置 (一)
Oct 09 PHP
php smarty模版引擎中的缓存应用
Dec 11 PHP
基于Linux调试工具strace与gdb的常用命令总结
Jun 03 PHP
PHP实现抓取Google IP并自动修改hosts文件
Feb 12 PHP
WordPress网站性能优化指南
Nov 18 PHP
WordPress中获取页面链接和标题的相关PHP函数用法解析
Dec 17 PHP
Smarty高级应用之缓存操作技巧分析
May 14 PHP
浅谈PHP Cookie处理函数
Jun 10 PHP
PHP使用第三方即时获取物流动态实例详解
Apr 27 PHP
PHP树形结构tree类用法示例
Feb 01 PHP
Laravel框架集成UEditor编辑器的方法图文与实例详解
Apr 17 PHP
PHP魔术方法的使用示例
Jun 23 #PHP
8个PHP数组面试题
Jun 23 #PHP
php中 ob_start等函数截取标准输出的方法
Jun 22 #PHP
php发送邮件的问题详解
Jun 22 #PHP
PHP获取音频文件的相关信息
Jun 22 #PHP
php生成PDF格式文件并且加密
Jun 22 #PHP
用PHP生成excel文件到指定目录
Jun 22 #PHP
You might like
杏林同学录(七)
2006/10/09 PHP
详解PHP显示MySQL数据的三种方法
2008/06/05 PHP
PHP 创建标签云函数代码
2010/05/26 PHP
PHP原生模板引擎 最简单的模板引擎
2012/04/25 PHP
php截取后台登陆密码的代码
2012/05/05 PHP
php获取一个变量的名字的方法
2014/09/05 PHP
原生js 秒表实现代码
2012/07/24 Javascript
js 获取(接收)地址栏参数值的方法
2013/04/01 Javascript
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
javascript递归回溯法解八皇后问题
2015/04/22 Javascript
javascript运动效果实例总结(放大缩小、滑动淡入、滚动)
2016/01/08 Javascript
JavaScript+canvas实现七色板效果实例
2016/02/18 Javascript
JS中使用FormData上传文件、图片的方法
2016/08/07 Javascript
Bootstrap栅格系统学习笔记
2016/11/25 Javascript
浅谈js数组和splice的用法
2016/12/04 Javascript
Jquery on绑定的事件 触发多次实例代码
2016/12/08 Javascript
详解使用vuex进行菜单管理
2017/12/21 Javascript
JQuery元素快速查找与操作
2018/04/22 jQuery
微信小程序有旋转动画效果的音乐组件实例代码
2018/08/22 Javascript
vue2.0$nextTick监听数据渲染完成之后的回调函数方法
2018/09/11 Javascript
JavaScript中filter的用法实例分析
2019/02/27 Javascript
详解如何运行vue项目
2019/04/15 Javascript
手把手教你如何编译打包video.js
2020/12/09 Javascript
Python实现快速排序和插入排序算法及自定义排序的示例
2016/02/16 Python
Python 数据结构之队列的实现
2017/01/22 Python
python脚本替换指定行实现步骤
2017/07/11 Python
Python基础语言学习笔记总结(精华)
2017/11/14 Python
Python 50行爬虫抓取并处理图灵书目过程详解
2019/09/20 Python
python输入错误后删除的方法
2019/10/12 Python
详解Python IO口多路复用
2020/06/17 Python
文明学生事迹材料
2014/01/29 职场文书
企业演讲稿范文大全
2014/05/20 职场文书
投标承诺书怎么写
2014/05/24 职场文书
村委会贫困证明范本
2014/09/17 职场文书
法定授权委托证明书
2015/06/18 职场文书
Python Matplotlib绘制两个Y轴图像
2022/04/13 Python