程序员人生 网站导航

cakephp笔记――find()函数

栏目:CakePHP时间:2014-09-23 08:00:00

cakephp里面对数据库表进行操作肯定会用到的find()函数,将各种需要进行find的条件内容装进有一个个数组里面,用起来非常方便。find函数有很多种用法,在进行各种查找时往往需要不同的find形式,因此把一些比较常见而且有用的做个笔记。

1.find(string $type = 'first', array $params = array()),find是模型中进行数据检索的主力军。$params用来向不同的find来传递各种参数,常用的参数有conditions=>即搜索的条件,相当于SQL中的查询语句;fields=>想要查询的字段,相当于SQL里面的SELECT;order=>自然是排序;limit=>查询所得结果数量的限制等等,因需而用;

2.find('first', $params) 返回一个结果,你可以在任何期望获得一个结果的情况下使用它;

3.find('count', $params) 返回一个整数值。即要查询的数据表中的元素的个数;

4.find('all', $params) 返回一个数组(可能有多个)结果,查询后返回所有结果,如果数据表中有外键链接到其他数据表的话,也会相应的拿到那条链上的数据一并返回回来;

5.find('list', $params) 返回一个索引数组,用在想要一个用于类似 HTML 输入表单中的 select 元素所需的列表的场合。即返回一个键值对的数组,其中的键值对组合可以在params的fields的条件中设置,第一个即键,第二个即数据值;

6.find('neighbors', $params) 执行与 ‘first’相同的查找,但返回的是所请求的前一行和后一行,在find出的数组中下表分别是[prev]和[next];

7.Model:query,调用 SQL,可以直接使用模型的 query() 方法,举例

$this->Picture->query("SELECT * FROM pictures LIMIT 2;");
基本的查询语句这些差不多就够用了,其实cakephp的查询方法还有很多而且很有意思。有兴趣的可以拿出来研究下,从而可以用在更加复杂和有趣的搜索以及判断等等的用途上。

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐