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初学者们头痛的十四个问题
Jan 15 PHP
PHP 执行系统外部命令 system() exec() passthru()
Aug 11 PHP
php 魔术方法使用说明
Oct 20 PHP
php动态实现表格跨行跨列实现代码
Nov 06 PHP
采用memcache在web集群中实现session的同步会话
Jul 05 PHP
修改destoon会员公司的伪静态中的com目录的方法
Aug 21 PHP
php传值赋值和传地址赋值用法实例分析
Jun 20 PHP
PHP接口并发测试的方法(推荐)
Dec 15 PHP
PHP的mysqli_set_charset()函数讲解
Jan 23 PHP
简单实用的PHP文本缓存类实例
Mar 22 PHP
php反射学习之不用new方法实例化类操作示例
Jun 14 PHP
PHP实现笛卡尔积算法的实例讲解
Dec 22 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
如何对PHP程序中的常见漏洞进行攻击(下)
2006/10/09 PHP
php allow_url_include的应用和解释
2010/04/22 PHP
PHP实现的日历功能示例
2018/09/01 PHP
php生成随机数/生成随机字符串的方法小结【5种方法】
2020/05/27 PHP
JS图片根据鼠标滚动延时加载的实例代码
2013/07/13 Javascript
jquery实现网页查找功能示例分享
2014/02/12 Javascript
三种动态加载js的jquery实例代码另附去除js方法
2014/04/30 Javascript
使用JSON.parse将json字符串转换成json对象的时候会出错
2014/09/04 Javascript
jQuery中的pushStack实现原理和应用实例
2015/02/03 Javascript
JavaScript实现数组在指定位置插入若干元素的方法
2015/04/06 Javascript
总结JavaScript中布尔操作符||与&amp;&amp;的使用技巧
2015/11/17 Javascript
jQuery获取cookie值及删除cookie用法实例
2016/04/15 Javascript
sso跨域写cookie的一段js脚本(推荐)
2016/05/25 Javascript
原生JS简单实现ajax的方法示例
2016/11/29 Javascript
jQuery编写textarea输入字数限制代码
2017/03/23 jQuery
Vue cli 引入第三方JS和CSS的常用方法分享
2018/01/20 Javascript
JS实现读取xml内容并输出到div中的方法示例
2018/04/19 Javascript
jquery实现搜索框功能实例详解
2018/07/23 jQuery
react中实现搜索结果中关键词高亮显示
2018/07/31 Javascript
使用 Jest 和 Supertest 进行接口端点测试实例详解
2020/04/25 Javascript
遗传算法之Python实现代码
2017/10/10 Python
Python网络爬虫神器PyQuery的基本使用教程
2018/02/03 Python
python 通过 socket 发送文件的实例代码
2018/08/14 Python
Python实现FM算法解析
2019/06/18 Python
Python用类实现扑克牌发牌的示例代码
2020/06/01 Python
pandas使用函数批量处理数据(map、apply、applymap)
2020/11/27 Python
城野医生官方海外旗舰店:风靡亚洲毛孔收敛水
2018/04/26 全球购物
简述DNS进行域名解析的过程
2013/12/02 面试题
数控专业毕业生自荐信范文
2014/03/04 职场文书
学校爱国卫生月活动总结
2014/06/25 职场文书
2019行政前台转正申请书范文3篇
2019/08/15 职场文书
创业计划书之熟食店
2019/10/16 职场文书
php字符串倒叙
2021/04/01 PHP
nodejs利用readline提示输入内容实例代码
2021/07/15 NodeJs
小程序实现侧滑删除功能
2022/06/25 Javascript
Win11 22H2 2022怎么更新? 获得Win1122H22022版本升级技巧
2022/09/23 数码科技