ThinkPHP 连贯操作

来源:转载 发布时间:2018-07-03 17:47:32 阅读量:966

一、连贯操作代码演示

<?php	header('Content-Type:text/html;charset=utf-8');//编码问题	/**	* 	连贯操作演示	*/	class Model{		private $tabNmae = null;		private $sql;		private $where;		function __construct($tabNmae){			$this->tabNmae = $tabNmae;			mysql_connect('127.0.0.1','root','rootroot') or die("数据库链接错误");			mysql_select_db('testTP');		}		function where($_where){			$this->where = $_where;			return $this;		}				function select(){			$arr=array();			$this->sql="select * from tt_".strtolower($this->tabNmae)." where $this->where";			$result=mysql_query($this->sql);			if ($result&&mysql_num_rows($result)>0) {				while ($res = mysql_fetch_assoc($result)) {					$arr[] = $res;				}			}			return $arr;		}
//$arr = $m->order('id desc')->select();//排序  desc降序  asc升序(默认)//SELECT * FROM `tt_user` ORDER BY id desc// $arr = $m->order(array('id'=>'desc','money'=>'desc'))->select();//SELECT * FROM `tt_user` ORDER BY `id` desc,`money` desc


function getSql(){return $this->sql;}}$m = new Model('User');$arr = $m->where('id>4')->select();var_dump($arr);echo "<hr/>";echo $m->getSql();

二、常用连贯操作

可以多个函数连贯操作且不区分顺序,但最后一定要已select()、find()等函数结尾

1.where:帮助我们查询条件

2.order:对结果进行排序

$arr = $m->order('id desc')->select();//排序  desc降序  asc升序(默认)//SELECT * FROM `tt_user` ORDER BY id desc$arr = $m->order(array('id'=>'desc','money'=>'desc'))->select();//SELECT * FROM `tt_user` ORDER BY `id` desc,`money` desc

3.limit:限制结果数量

limit(2,5);limit('2,5');limit(10);//取出10条数据$arr = $m->order(array('id'=>'desc'))->limit(3,3)->select();//从第3条数据取出3条//SELECT * FROM `tt_user` ORDER BY `id` desc LIMIT 3

4.field:设置查询字段

$arr = $m->field('user_name as name,id')->select();$arr = $m->field(array('user_name'=>'name',id))->select();//SELECT `user_name` AS `user`,`id` FROM `tt_user`$arr = $m->field('id',true)->select();//获取除了id以外的字段

5.table:设置表名

6.group:分组

7.having:跟分组有关的

三、补充(了解即可)

alias用于给当前数据定义别名 字符串

page 用于查询分页(内部会转成limit)字符串和数字

join* 用于查询join支持 字符串和数组

union* 用于查询union支持字符串、数组和对象

distinct 用于查询的distinct支持布尔值

lock 用于数据库的锁机制 布尔值

cache 用于查询缓存 支持多个参数(以后在缓存部分在详细描述)

relation 用于关联查询(需要关联模型扩展支持)字符串

validate 用于数据自动检验 数组

auto 用于数据自动完成 数组

filter 用于数据过滤 字符串

ceope* 用于命名范围 字符串、数组


原文地址https://blog.csdn.net/HYQ_java/article/details/80843700

标签: PHP
分享:
评论:
你还没有登录,请先