查询

您正在阅读旧版文档,新版文档已迁移至 [https://document.pescms.com]

目录

PESCMS为开发者提供了4个方法。分别为:find(), select(), fetch(), getAll()。前两个可以结合SQL构造器完成一系列SQL动作,后两个为原生SQL方式

示例中均以在控制器中操作作说明。

一维数组的查询

find()

参数说明备注
$param插入占位符绑定的内容数组非必填。若与SQL构造器使用时,存在占位符则必填
$fieldType字段类型绑定,与占位符长度一致的数组非必填。字段绑定具体请参阅PHP官网

fetch()

参数说明备注
$sqlSQL语句必填
$param插入占位符绑定的内容数组非必填。若使用了占位符则必填
$fieldType字段类型绑定,与占位符长度一致的数组非必填。字段绑定具体请参阅PHP官网

find()和fetch()方法为一维数组查询,这是什么?他们两者在查询成功后,返回的结果集为一个一维数组。通常适用于,查询单个结果的业务。下面通过示例进行说明,现在通过$_GET['id']查询指定用户的信息

<?php
//find()方法与SQL构造器结合使用查询用户信息
$userInfo = $this->db('user')->where('user_id = :id')->find(array('id' => $_GTE['id']));
<?php
//编写原生SQL时,请记得调用表前缀变量
$sql = "SELECT * FROM {$this->prefix}user WHERE user_id = :id";

//fetch()方法使用原生SQL时,db()方法可以不填写表名称的。
$userInfo = $this->db()->fetch($sql, array('id' => $_GET['id']));

二维数组的查询

select()

参数说明备注
$param插入占位符绑定的内容数组非必填。若与SQL构造器使用时,存在占位符则必填
$fieldType字段类型绑定,与占位符长度一致的数组非必填。字段绑定具体请参阅PHP官网

getAll()

参数说明备注
$sqlSQL语句必填
$param插入占位符绑定的内容数组非必填。若使用了占位符则必填
$fieldType字段类型绑定,与占位符长度一致的数组非必填。字段绑定具体请参阅PHP官网

select()和getAll()方法为二维数组查询,这是什么呢?他们两者在查询成功后,返回的结果集为一个二维数组。通常适用于,获取多行结果的业务。下面通过示例进行说明,现在通过$_GET['uid']查询指定用户的订单表信息。

<?php
//select()方法与SQL构造器结合使用
$orderList = $this->db('order')->where('user_id = :uid')->select(array('uid' => $_GET['uid']));
<?php
//编写原生SQL时,请记得调用表前缀变量
$sql = "SELECT * FROM {$this->prefix}order WHERE user_id = :uid";

//getAll()方法使用原生SQL时,db()方法可以不填写表名称的。
$userInfo = $this->db()->getAll($sql, array('uid' => $_GET['uid']));


PESCMS DOC 文档系统
© Copyright 2015-2024. by the PESCMS DOC
耗时0.0213秒