PHPCMF 内置了一个快速强大的数据库抽象类,支持传统的查询架构以及查询构造器模式。 数据库方法的语法简单明了。

    一、基本用法

    数据库对象调用方法

    1. \Phpcmf\Service::M()->db

    运行查询语句

    1. $rt = \Phpcmf\Service::M()->db->query("你的查询语句");

    判断成功与否的方法

    1. $rt = \Phpcmf\Service::M()->db->simpleQuery("你的查询语句");
    2. if ($rt) {
    3. // 成功
    4. } else {
    5. //失败
    6. echo \Phpcmf\Service::M()->db->error();
    7. }

    获取上次查询的sql语句

    1. echo \Phpcmf\Service::M()->db->getQuery();

    二、查询结果

    多个查询结果返回

    1. $rt = \Phpcmf\Service::M()->db->query("select * from dr_member");
    2. if ($rt) {
    3. $rows = $rt->getResultArray();
    4. foreach ($rows as $t) {
    5. echo $t['id'];
    6. .....
    7. }
    8. }

    单个查询结果返回

    1. $rt = \Phpcmf\Service::M()->db->query("select * from dr_member where id=1");
    2. if ($rt) {
    3. $row = $rt->getRowArray();
    4. echo $row['id'];
    5. }

    三、对象查询

    统计某表数据

    1. \Phpcmf\Service::M()->db->table('member')->countAll(); // 全部
    2. \Phpcmf\Service::M()->db->table('member')->where('money', 0)->countAll(); // 带条件

    条件查询表

    1. $rt = \Phpcmf\Service::M()->db->table("member")->where("字段", "字段值")->get();
    2. if ($rt) {
    3. $rows = $rt->getResultArray();
    4. var_dump($rows);
    5. }

    限定数量查询

    1. $rt = \Phpcmf\Service::M()->db->table("member")->limit(10, 0)->get();
    2. if ($rt) {
    3. $rows = $rt->getResultArray();
    4. var_dump($rows);
    5. }

    字段选择查询

    1. $rt = \Phpcmf\Service::M()->db->table("member")->select("id,username,email")->get();
    2. if ($rt) {
    3. $rows = $rt->getResultArray();
    4. var_dump($rows);
    5. }

    四、插入数据

    1. $data = array(
    2. 'title' => 'My title',
    3. 'name' => 'My Name',
    4. 'date' => 'My date'
    5. );
    6. \Phpcmf\Service::M()->db->table('test')->insert($data);
    7. echo $id = \Phpcmf\Service::M()->db->insertID(); // id

    test是表名称,data数组是插入的字段和对应值

    五、修改数据

    按条件修改

    1. $data = array(
    2. 'title' => 'My title',
    3. 'name' => 'My Name',
    4. 'date' => 'My date'
    5. );
    6. \Phpcmf\Service::M()->db->table('test')->where('id', 123)->update($data);

    字段分开写法

    1. $db = \Phpcmf\Service::M()->db->table('mytable');
    2. $db->where('id', 2);
    3. $db->set('field', 'field + 1', false);
    4. $db->update();
    5. //UPDATE mytable SET field = field+1 WHERE `id` = 2
    6.  
    7. $db = \Phpcmf\Service::M()->db->table('mytable');
    8. $db->where('id', 2);
    9. $db->set('field', 999);
    10. $db->update();
    11. //UPDATE mytable SET field = 999 WHERE `id` = 2

    六、数据删除

    条件删除

    1. $db = \Phpcmf\Service::M()->db->table('mytable');
    2. $db->delete(array('id' => 123));
    3. // DELETE FROM mytable WHERE id = 123

    清空表

    1. $db = \Phpcmf\Service::M()->db->table('mytable');
    2. $db->truncate();

    文档最后更新时间:2017-09-27 07:32:43