PHP实现的连贯操作、链式操作实例


Posted in PHP onJuly 08, 2014

PHP中的连贯操作看起来的确很酷,也非常的方便代码的阅读,当然了必须是在OOP中用才行,在过程化的程序中,就没有必要用这种方法了。有实现这个方法的有用_CALL来实现的,而我下面写的这个例子,则不是用_call的,大家可以扩展一下吧。

下面写的这个SQL语句组合类,主要是用于学习的,如果有同学想拿去用,请再完善一下。

/*
 * SQL语句组合实例类,始发文章web开发笔记
 * 学习用,非专业类
 * */
class sql{
	private $sql=array("from"=>"",
			"where"=>"",
			"order"=>"",
			"limit"=>"");
 
	public function from($tableName) {
		$this->sql["from"]="FROM ".$tableName;
		return $this;
	}
 
	public function where($_where='1=1') {
		$this->sql["where"]="WHERE ".$_where;
		return $this;
	}
 
	public function order($_order='id DESC') {
		$this->sql["order"]="ORDER BY ".$_order;
		return $this;
	}
 
	public function limit($_limit='30') {
		$this->sql["limit"]="LIMIT 0,".$_limit;
		return $this;
	}
	public function select($_select='*') {
		return "SELECT ".$_select." ".(implode(" ",$this->sql));
	}
}
 
$sql =new sql();
 
echo $sql->from("testTable")->where("id=1")->order("id DESC")->limit(10)->select();
//输出 SELECT * FROM testTable WHERE id=1 ORDER BY id DESC LIMIT 0,10
PHP 相关文章推荐
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
Feb 22 PHP
php 应用程序安全防范技术研究
Sep 25 PHP
二招解决php乱码问题
Mar 25 PHP
php获取apk包信息的方法
Aug 15 PHP
PHP实现格式化文件数据大小显示的方法
Jan 03 PHP
php中使用url传递数组的方法
Feb 11 PHP
深入解析PHP中foreach语句控制数组循环的用法
Nov 30 PHP
PHP导出Excel实例讲解
Jan 24 PHP
深入解析PHP中SESSION反序列化机制
Mar 01 PHP
phpMyAdmin无法登陆的解决方法
Apr 27 PHP
PHP实现生成数据字典功能示例
May 24 PHP
详解关于php的xdebug配置(编辑器vscode)
Jan 29 PHP
PHP类中的魔术方法(Magic Method)简明总结
Jul 08 #PHP
PHP的魔术常量__METHOD__简介
Jul 08 #PHP
PHP中的插件机制原理和实例
Jul 08 #PHP
phpmailer在服务器上不能正常发送邮件的解决办法
Jul 08 #PHP
php去掉URL网址中带有PHPSESSID的配置方法
Jul 08 #PHP
PHP大批量插入数据库的3种方法和速度对比
Jul 08 #PHP
php发送get、post请求的6种方法简明总结
Jul 08 #PHP
You might like
Windows下PHP5和Apache的安装与配置
2006/09/05 PHP
十天学会php之第三天
2006/10/09 PHP
PHP整数取余返回负数的相关解决方法
2014/05/15 PHP
php实现cookie加密的方法
2015/03/10 PHP
PHP中Restful api 错误提示返回值实现思路
2016/04/12 PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
2017/04/19 PHP
jquery根据锚点offset值实现动画切换
2014/09/11 Javascript
jQuery中:text选择器用法实例
2015/01/03 Javascript
javascript解三阶幻方(九宫格)
2015/04/22 Javascript
js控制TR的显示隐藏
2016/03/04 Javascript
动态加载js、css的简单实现代码
2016/05/26 Javascript
JS检测移动端横竖屏的代码
2016/05/30 Javascript
Bootstrap Scrollspy源码学习
2017/03/02 Javascript
nodejs处理图片的中间件node-images详解
2017/05/08 NodeJs
基于js粘贴事件paste简单解析以及遇到的坑
2017/09/07 Javascript
Vue修改mint-ui默认样式的方法
2018/02/03 Javascript
vue中手机号,邮箱正则验证以及60s发送验证码的实例
2018/03/16 Javascript
layer.confirm取消按钮绑定事件的方法
2018/08/17 Javascript
了解Javascript中函数作为对象的魅力
2019/06/19 Javascript
通过扫小程序码实现网站登陆功能
2019/08/22 Javascript
详解NodeJs项目 CentOs linux服务器线上部署
2019/09/16 NodeJs
详解Vue.js 作用域、slot用法(单个slot、具名slot)
2019/10/15 Javascript
CountUp.js数字滚动插件使用方法详解
2019/10/17 Javascript
vue 全局封装loading加载教程(全局监听)
2020/11/05 Javascript
分析Python的Django框架的运行方式及处理流程
2015/04/08 Python
Python异常原理及异常捕捉实现过程解析
2020/03/25 Python
浅谈Python中的模块
2020/06/10 Python
Python在线和离线安装第三方库的方法
2020/10/31 Python
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2016/01/06 面试题
幼儿园教师个人反思
2014/01/30 职场文书
公司合作协议书范本
2014/04/18 职场文书
大学新生军训自我鉴定范文
2014/09/13 职场文书
一年级语文下册复习计划
2015/01/17 职场文书
公司规章制度范本
2015/08/03 职场文书
python_tkinter事件类型详情
2022/03/20 Python
《艾尔登法环》发布最新「战技」宣传片
2022/04/03 其他游戏