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 编写大型网站问题集
May 07 PHP
php设计模式 Interpreter(解释器模式)
Jun 26 PHP
pdo中使用参数化查询sql
Aug 11 PHP
PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
Jun 12 PHP
PHP使用json_encode函数时不转义中文的解决方法
Nov 12 PHP
php操作mongoDB实例分析
Dec 29 PHP
php快速排序原理与实现方法分析
May 26 PHP
利用PHP自动生成印有用户信息的名片
Aug 01 PHP
PHP进程通信基础之信号
Feb 19 PHP
PHP编程计算日期间隔天数的方法
Apr 26 PHP
php多进程应用场景实例详解
Jul 22 PHP
laravel 实现登陆后返回登陆前的页面方法
Oct 03 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
上海永华YH-R296(华普R-96)12波段立体声收音机的分析和打理
2021/03/02 无线电
php include的妙用,实现路径加密
2008/07/29 PHP
jQuery中的RadioButton,input,CheckBox取值赋值实现代码
2014/02/18 PHP
PHP中模拟处理HTTP PUT请求的例子
2014/07/22 PHP
PHP制作百度词典查词采集器
2015/01/29 PHP
跨浏览器的设置innerHTML方法
2006/09/18 Javascript
javascript window对象属性整理
2009/10/24 Javascript
js 面向对象的技术创建高级 Web 应用程序
2010/02/25 Javascript
JavaScript中的this,call,apply使用及区别详解
2016/01/29 Javascript
JavaScript实现复制内容到粘贴板代码
2016/03/31 Javascript
vueJS简单的点击显示与隐藏的效果【实现代码】
2016/05/03 Javascript
浅谈Angularjs link和compile的使用区别
2016/10/21 Javascript
Angular2管道Pipe及自定义管道格式数据用法实例分析
2017/11/29 Javascript
详解如何用模块化的方式写vuejs
2017/12/16 Javascript
JavaScript常见JSON操作实例分析
2018/08/08 Javascript
vue 扩展现有组件的操作
2020/08/14 Javascript
[04:31]2016国际邀请赛中国区预选赛妖精采访
2016/06/27 DOTA
[02:28]DOTA2 2017国际邀请赛小组赛回顾
2017/08/09 DOTA
[52:39]完美世界DOTA2联赛PWL S3 CPG vs Forest 第一场 12.16
2020/12/17 DOTA
python用来获得图片exif信息的库实例分析
2015/03/16 Python
使用Python编写基于DHT协议的BT资源爬虫
2016/03/19 Python
Python读取Json字典写入Excel表格的方法
2018/01/03 Python
Python实现获取邮箱内容并解析的方法示例
2018/06/16 Python
django session完成状态保持的方法
2018/11/27 Python
Python使用paramiko连接远程服务器执行Shell命令的实现
2021/03/04 Python
个人简历中的自我评价范例
2013/10/29 职场文书
活动策划邀请函
2014/02/06 职场文书
新年晚会主持词
2014/03/24 职场文书
买房委托公证书
2014/04/08 职场文书
公司总经理任命书
2014/06/05 职场文书
“四风”问题自我剖析材料思想汇报
2014/09/23 职场文书
2014小学语文教师个人工作总结
2014/12/03 职场文书
员工保密协议范本,您一定得收藏!很有用!
2019/08/08 职场文书
Java使用httpRequest+Jsoup爬取红蓝球号码
2021/07/02 Java/Android
使用 CSS 轻松实现一些高频出现的奇形怪状按钮
2021/12/06 HTML / CSS
JavaScript实例 ODO List分析
2022/01/22 Javascript