1. 程式人生 > >thinkphp的select和find的區別

thinkphp的select和find的區別

代碼 select() 我們 arr 數組 create 由於 架構 開發框架

thinkphp是比較好的PHP開發框架,能比較快速的開發MVC架構的管理系統,我們需要用到 select()和find()方法,兩個方法都能返回數據集數組,但有什麽不同呢?先看一下我的代碼對比:

$tech=M(techlevel,HR_CS_,DB_CONFIG2);  
$Data=$tech->where(id=1)->find();  
dump($Data);  
$Data=$tech->where(id=1)->select();  
dump($Data);  

結果:

array(6) {  
  ["
ID"] => int(1) ["TechLevel"] => string(2) "10" ["Remark"] => string(4) "備註" ["CreateDate"] => string(19) "2013-03-14 15:14:38" ["CreateBy"] => string(5) "admin" ["ROW_NUMBER"] => string(1) "1" } array(1) { [0] => array(6) { ["ID"] => int
(1) ["TechLevel"] => string(2) "10" ["Remark"] => string(4) "備註" ["CreateDate"] => string(19) "2013-03-14 15:14:38" ["CreateBy"] => string(5) "admin" ["ROW_NUMBER"] => string(1) "1" } }

從上面的代碼可以看出,find()返回一個一維數組,select()返回一個二維數組,所以在取值時有所不同,一維數組取值用$data["TechLevel"],二維數組取值用$data[0]["TechLevel"],由於一開始沒了解這個用法,調試一天也取不值,最後有dump方法才看到兩個方法的不同所在!

thinkphp的select和find的區別