select()和find()方法,两个方法都能返回数据集数组,但有什么不同呢?先看一下我的代码对比:

代码片段
5 行
     $tech=M('techlevel','HR_CS_','DB_CONFIG2');  
    $Data=$tech->where('id=1')->find();  
    dump($Data);  
    $Data=$tech->where('id=1')->select();  
    dump($Data);  

结果

从上面的代码可以看出,find()返回一个一维数组,select()返回一个二维数组,所以在取值时有所不同,一维数组取值用$data["TechLevel"],二维数组取值用$data[0]["TechLevel"],由于一开始没了解这个用法,调试一天也取不值,最后有dump方法才看到两个方法的不同所在!

即select方法返回的一个数据集,而find方法返回的是一行。