>백엔드 개발 >PHP 튜토리얼 >thinkphp는 얻은 결과 세트에서 배열을 추출합니다.

thinkphp는 얻은 결과 세트에서 배열을 추출합니다.

WBOY
WBOY원래의
2016-08-08 08:49:432913검색

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();
에코 에코 $list['제목'];

배열 추출:
$list = $Base->where("id='".$id."'")->select();

로 변경 $list = $Base->where("id='".$id."'")->find();
2차원 배열임을 알아낸 선택
결과에 레코드가 하나만 있는 것이 확실하다면 find를 사용하세요. 물론 select를 사용하는 것이 맞지만, select를 사용하면 echo $list를 해야 하는 느낌이 듭니다. [0]['제목'];

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.