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 相关文章推荐
BBS(php & mysql)完整版(八)
Oct 09 PHP
用PHP动态生成虚拟现实VRML网页
Oct 09 PHP
php使用Smarty的相关注意事项及访问变量的几种方式
Dec 08 PHP
php开发留言板的CRUD(增,删,改,查)操作
Apr 19 PHP
基于PHP导出Excel的小经验 完美解决乱码问题
Jun 10 PHP
php echo, print, print_r, sprintf, var_dump, var_expor的使用区别
Jun 20 PHP
php判断正常访问和外部访问的示例
Feb 10 PHP
PHP翻页跳转功能实现方法
Nov 30 PHP
php自动载入类用法实例分析
Jun 24 PHP
php使用curl实现ftp文件下载功能
May 16 PHP
phpQuery采集网页实现代码实例
Apr 02 PHP
laravel ajax curd 搜索登录判断功能的实现
Apr 17 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
php之字符串变相相减的代码
2007/03/19 PHP
解析php入库和出库
2013/06/25 PHP
php将数组存储为文本文件方法汇总
2015/10/28 PHP
24条货真价实的PHP代码优化技巧
2016/07/28 PHP
PHP实现长轮询消息实时推送功能代码实例讲解
2021/02/26 PHP
强制设为首页代码
2006/06/19 Javascript
jquery ui 1.7 ui.tabs 动态添加与关闭(按钮关闭+双击关闭)
2010/04/01 Javascript
javascript改变position值实现菜单滚动至顶部后固定
2013/01/18 Javascript
window.location不跳转的问题解决方法
2014/04/17 Javascript
使用jQuery将多条数据插入模态框的实现代码
2014/10/08 Javascript
jQuery中replaceAll()方法用法实例
2015/01/16 Javascript
JavaScript学习笔记之JS事件对象
2015/01/22 Javascript
javascript数据结构与算法之检索算法
2015/04/04 Javascript
JavaScript操作HTML元素和样式的方法详解
2015/10/21 Javascript
浅谈node.js中async异步编程
2015/10/22 Javascript
jQuery实现form表单元素序列化为json对象的方法
2015/12/09 Javascript
JavaScript中判断数据类型的方法总结
2016/05/24 Javascript
详解JSON Web Token 入门教程
2018/07/30 Javascript
解决node终端下运行js文件不支持ES6语法
2020/04/04 Javascript
微信小程序实现拼图小游戏
2020/10/22 Javascript
Vue检测屏幕变化来改变不同的charts样式实例
2020/10/26 Javascript
Python Sleep休眠函数使用简单实例
2015/02/02 Python
Python单元测试unittest的具体使用示例
2018/12/17 Python
python之Flask实现简单登录功能的示例代码
2018/12/24 Python
python输出带颜色字体实例方法
2019/09/01 Python
Python爬取阿拉丁统计信息过程图解
2020/05/12 Python
python实现AdaBoost算法的示例
2020/10/03 Python
Python 将代码转换为可执行文件脱离python环境运行(步骤详解)
2021/01/25 Python
浅谈css3中的前缀
2016/07/20 HTML / CSS
美国时尚孕妇装品牌:A Pea in the Pod
2017/07/16 全球购物
教师自荐信
2013/12/10 职场文书
行政专员工作职责
2013/12/22 职场文书
党支部公开承诺书
2014/03/28 职场文书
医生辞职信范文
2015/03/02 职场文书
元旦晚会主持词开场白
2015/05/28 职场文书
Redis如何使用乐观锁(CAS)保证数据一致性
2022/03/25 Redis