區別:1、find()會查找符合條件的第一條數據,返回一維數組;而select()會查找符合條件的所有的數據,返回二維數組。2、find()結果取值用“$data[“鍵名”]”,而select()結果取值用“$data[0][“鍵名”]”。
本教程操作環境:windows7系統、thinkphp5版,DELL G3電腦。
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框架】
立即學習“PHP免費學習筆記(深入)”;
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END
喜歡就支持一下吧
相關推薦