thinkphp的select和find的區別
thinkphp是比較好的php開發架構,能比較快速的開發MVC架構的管理系統,我們需要用到 select()和find()方法,兩個方法都能返回資料集數組,但有什麼不同呢?先看一下My Code對比:
$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方法才看到兩個方法的不同所在!