首頁 > 後端開發 > php教程 > thinkphp從取得的結果集中提取數組

thinkphp從取得的結果集中提取數組

WBOY
發布: 2016-08-08 08:49:43
原創
2910 人瀏覽過

thinkphpphp

thinkphp從獲取到的結果集中有一天數據,如何提取出來轉化為數組 用什麼方法?

回覆內容:

<code> ThinkPHP find方法 查询一条数据记录
find()
ThinkPHP find() 方法是和 select() 用法类似的一个方法,不同之处 find() 查询出来的始终只有一条数据,即系统自动加上了 LIMIT 1 限制。
当确认查询的数据记录只能是一条记录时,建议使用 find() 方法查询,如用户登录账号检测:
public function chekUser(){
    header("Content-Type:text/html; charset=utf-8");
    $Dao = M("User");

    // 构造查询条件
    $condition['username'] = 'Admin';
    $condition['password'] = MD5('123456');
    // 查询数据
    $list = $Dao->where($condition)->find();

    if($list){
        echo '账号正确';
    }else{
        echo '账号/密码错误';
    }
}
与 select() 的另一个不同之处在于,find() 返回的是一个一维数组,可以在模板里直接输出数组单元的值而无需使用 volist 等标签循环输出:
{$list['username']}
find() 主键查询
当 find() 查询的条件参数为表主键时,可以直接将参数写入方法内,如:
$Dao = M("User");
$list = $Dao->find(1);
user 表主键为 uid,该例子将查询 uid=1 的数据,这是 ActiveRecords 模式实现之一,简洁直观。
</code>
登入後複製

例如:$list = $Base->where("id='".$id."'")->select();
echo echo $list['title'];

提取數組:
$list = $Base->where("id='".$id."'")->select();
改為
$list = $Base->where("id='".$id."'")->find();
select 查出來是二維數組
如果確定結果只有一筆記錄請用find,當然你用select也沒錯,只是有點脫褲子放屁的感覺,用select的話,就得 echo $list[0]['title'];

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板