thinkphp的select和find的区别

如题所述

thinkphp的select和find的区别如下:
1、find()返回一个一维数组,而select()返回一个二维数组。
2、取值时有所不同,一维数组取值用 $data["demo"],二维数组取值用 $data[0]["demo"]
thinkphp用到 select()和find()方法,两个方法都能返回数据集数组,find()返回一个一维数组,select()返回一个二维数组。
两者还有一个重要的不同之处:读取数据的操作其实和数据集的类似,select可用的所有连贯操作方法也都可以用于find方法,区别在于find方法最多只会返回一条记录,因此limit方法对于find查询操作是无效的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-02-17
find()返回一个一维数组,select()返回一个二维数组,所以在取值时有所不同,一维数组取值用$data["TechLevel"],二维数组取值用$data[0]["TechLevel"],由于一开始没了解这个用法,调试一天也取不值,最后有dump方法才看到两个方法的不同所在!
第2个回答  2016-03-17
find方法,如果带参数,就只能是主键ID,这样能返回对应数据,如果不带参数,返回的是所查询数据集的第一条记录,类似limit(1)这样的。
find 方法:查询符合条件的第一条数据。
select 方法:查询符合条件的所有数据。
相似回答