thinkphp에서는 where 메소드를 사용하여 데이터베이스 연산 결과를 필터링하는데, 이는 모델 클래스의 일관된 연산 메소드 중 하나이며, 일반 쿼리, 표현식 쿼리, 간격 쿼리 및 결합 쿼리를 포함할 수 있습니다. 쿼리 작업에서 구문은 "객체 인스턴스화->where('조건');"입니다.
이 문서의 운영 환경: Windows 10 시스템, ThinkPHP 버전 6, Dell G3 컴퓨터.
where 메소드를 사용하여 데이터베이스 작업 결과를 필터링할 수 있습니다. 즉, SQL 쿼리 문의 where 절입니다.
오늘은 가장 일반적으로 사용되지만 가장 복잡한 쿼리 방법에 대해 설명하겠습니다. where 메서드 역시 모델 클래스의 일관된 작업 방법 중 하나이며 쿼리 및 작업 조건 설정에 주로 사용됩니다.
where 메소드의 사용법은 ThinkPHP 쿼리 언어의 핵심이자 ThinkPHP ORM의 중요한 부분이자 하이라이트입니다. 일반 쿼리, 표현식 쿼리, 빠른 쿼리, 간격 쿼리 및 결합 쿼리를 포함한 쿼리 작업을 완료할 수 있습니다. where 메소드의 매개변수는 문자열과 배열을 지원하지만 객체를 사용할 수도 있지만 권장되지 않습니다.
문자열 조건
문자열 조건을 사용하여 직접 쿼리하고 연산할 수 있습니다. 예:
$User = M("User"); // 实例化User对象 $User->where('type=1 AND status=1')->select();
최종 생성된 SQL 문은
SELECT * FROM think_user WHERE type=1 AND status=1
버전 3.1 이상을 사용하는 경우 문자열 조건 사용 시 협조를 권장합니다. 더 많은 보안을 보장하기 위한 전처리 메커니즘을 사용합니다. 예:
$Model->where("id=%d and username='%s' and xx='%f'",array($id,$username,$xx))->select();
또는 사용:
$Model->where("id=%d and username='%s' and xx='%f'",$id,$username,$xx)->select();
$id 변수가 사용자 제출 또는 URL 주소에서 오는 경우 입력이 숫자가 아닌 유형인 경우 형식이 강제로 지정됩니다. 쿼리하기 전에 숫자 형식으로 변환합니다.
문자열 전처리 형식 유형은 숫자, 문자열 등 지정을 지원합니다. 자세한 내용은 vsprintf 메서드의 매개변수 설명을 참조하세요.
Array 조건
배열 조건의 사용법은 ThinkPHP에서 권장하는 사용법입니다.
일반 쿼리
가장 간단한 배열 쿼리 방법은 다음과 같습니다.
$User = M("User"); // 实例化User对象 $map['name'] = 'thinkphp'; $map['status'] = 1; // 把查询条件传入查询方法 $User->where($map)->select();
최종 생성된 SQL 문은
SELECT * FROM think_user WHERE `name`='thinkphp' AND status=1
권장 학습: "PHP Video Tutorial"
위 내용은 thinkphp에서 where 메소드를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!