数据操作对象
获取数据操作对象
phpGrace 提供了 db() 函数、控制器、模型三种方式获取数据操作对象,详见下面的介绍;
说明 : 以下方式获取的数据操作对象都是以某个具体数据表为基础,可以直接进行表数据操作;
1. 通过 db() 函数获取数据操作对象
\db($tableName, $configName = 'db')
参数 1 : $tableName 表名称
参数 2 : $configName 全局配置中对应的键名称 【选填 默认 db】
示例代码
<?php class indexController extends grace{ public function index(){ $this->db = db('articles'); p($this->db, true); } }
2. 通过控制器的配置获取数据操作对象
在控制器类文件中配置 $tableName 属性控制器在初始化时会自动获取对应数据表的数据操作对象,并将其保存在 $this->db 变量内。
还可以通过 $tableKey 属性设置数据表的主键。示例代码 :
<?php class testController extends grace{ public $db; public $tableName = 'articles'; public $tableKey = 'article_id'; public function index(){ $data = $this->db ->where('article_id > ?', array(1)) ->fetchAll('article_title'); p($data); } }
3. 在模型文件中获取数据操作对象
在模型类文件中配置 $tableName 属性控制器在初始化时会自动获取对应数据表的数据操作对象,并将其保存在 $this->db 变量内。
还可以通过 $tableKey 属性设置数据表的主键。
模型示例代码
<?php // 文件位置 : phpGrace/models/test.php namespace phpGrace\models; class test extends \graceModel{ public $tableName = 'articles'; public $tableKey = 'article_id'; public function getData(){ $data = $this->m ->where('article_id > ?', array(1)) ->fetchAll('article_title'); p($data); } }
调用模型演示
<?php class testController extends grace{ public function index(){ $testModel = new \phpGrace\models\test(); $testModel->getData(); } }
或者
<?php class testController extends grace{ public function index(){ $testModel = model('test'); // test 为模型名称 $testModel->getData(); } }
重要说明
1. 一旦获取数据操作对象,就可以使用对象内部的各类方法快速地完成数据的增删改查工作;
2. 数据操作对象提供了极其丰富的的数据操作方法,几乎不需要您去编写 sql 命令,详见见下一节;