thinkphp的select和find的區別
阿新 • • 發佈:2017-07-11
代碼 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的區別