PHP 链式操作的实现
复制代码 代码如下: $db->where()->limit()->order();
在 Common 下创建 Database.php。
链式操作最核心的地方在于:在方法的最后 return $this;
Database.php:
<?phpnamespace Common;class Database{ function where($where){ return $this; //链式方法最核心的地方在于:在每一个方法之后 return $this } function order($order){ return $this; } function limit($limit){ return $this; }}
index.php:
<?phpdefine("BASEDIR",__DIR__); //定义根目录常量include BASEDIR."/Common/Loader.php";spl_autoload_register("\Common\Loader::autoload");$db = new CommonDatabase(); //传统的操作需要多行代码实现//$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 会给出自动提示):