直接说链式操作,也许大家不清楚是什么,但是在平时使用框架的过程中,大家肯定见到过这样子的使用:
$db->where()->limit()->order();
这种链式操作写法的好处就是可以用一行代码来实现你要的功能。
在不使用链式操作时,假如现在需要去操作数据库,我们建立了一个Database类,代码如下:
<?php
class Database
{
function where($where)
{
//条件
}
function order($order)
{
//排序
}
function limit($limit)
{
//限制
}
}
接着实现我们要的查询:
$db = new Database();
$db->where("id=1");
$db->where("age=18");
$db->order("id desc");
$db->limit(5);
这种情况下,我们需要写4行代码去进行一个数据库的查询。
那么,我们使用链式操作后呢,就能避免这种情况出现。
链式操作的关键点就在于,在方法的末尾加上一句:return $this.
<?php
class Database
{
function where($where)
{
return $this;
}
function order($order)
{
return $this;
}
function limit($limit)
{
return $this;
}
}
接着再来实现我们要的查询:
$db = new Database();
$db->where("id=1")->where("age=18")->order("id desc")->limit(5);
这样我们就仅使用了一行代码来实现原本四行代码的功能了。