thinkPHP에서 쿼리 표현식을 사용하는 방법

不言
풀어 주다: 2023-03-30 13:56:01
원래의
1242명이 탐색했습니다.

이 글은 thinkPHP의 표현식 쿼리 사용법을 주로 소개하고, thinkPHP 표현식 쿼리의 형식과 관련 연산자 사용법을 예시 형태로 분석했습니다. 필요한 친구들이 참고할 수 있습니다

이 글의 예시는 thinkPHP의 표현식 쿼리를 설명합니다. . 참조를 위해 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

ThinkPHP 표현식

여기서 언급된 표현식은 ThinkPHP 프레임워크의 고유한 표현식을 나타냅니다. 이러한 표현식은 쿼리, 업데이트, 삭제 등의 작업을 위한 조건 및 템플릿 태그에 사용됩니다.

조건식에서 식이 사용되는 곳

조건식 형식은 다음과 같습니다.

$map['field name'] = array('expression', 'Operation Condition');

여기서 $map 필요에 따라 이름을 지정할 수 있는 일반 배열 변수입니다. 위 형식의 표현식은 실제로 연산자의 의미입니다.

=$map['id'] = array ('eq' ,100);🎜다음과 동일: $map['id'] = 100;🎜🎜
ThinkPHP 연산자와 SQL 연산자 비교표
TP 연산자 SQL 연산자 Example 실제 쿼리 조건
eq =
neq != $map['id'] = array('neq',100); id != 100
gt > $map['id'] = array('gt',100); id > 100
egt >= $map['id'] = array('egt',100); id >= 100
lt <$map['id'] = array('lt',100);id < 100
elt<=$map['id'] = array('elt',100);id <= 100
likelike$map[ 'username'] = array('like','Admin%');username like 'Admin%'
betweenbetween and$map['id'] = array('between','1,8');id BETWEEN 1 AND 8
사이 아님사이 아님 $map['id'] = array('not between','1,8');id는 1과 8 사이가 아닙니다
inin$map['id'] = array( 'in','1,5,8');id in(1,5,8)
not innot in$map['id'] = array('not in','1,5,8');id not in(1,5,8)
and(默认)and$map['id'] = array(array('gt',1),array('lt',10));(id > 1) AND (id < ; 10)
oror$map['id'] = array(array('gt',3),array('lt',10), 'or');(id > 3) 또는 (ID < 10)
xor (XOR) xor 두 입력 중 하나만 true이면 결과는 true이고, 그렇지 않으면 false입니다. 1 xor 1 = 0
exp 종합적인 표현 $map['id'] = array('exp','in(1,3,8)'); $map[ ' id'] = array('in','1,3,8');

보충 지침

SQL과 마찬가지로 ThinkPHP 연산자도 대소문자를 구분하지 않으며 eq는 EQ와 동일합니다.

between 및 in 조건에서는 문자열 또는 배열을 지원합니다. 즉, 다음 두 가지 작성 방법은 동일합니다.

$map[&#39;id&#39;] = array(&#39;not in&#39;,&#39;1,5,8&#39;);
$map[&#39;id&#39;] = array(&#39;not in&#39;,array(&#39;1&#39;,&#39;5&#39;,&#39;8&#39;));
로그인 후 복사

exp 표현식

위 표의 exp는 연산자가 아니라 합성 표현식입니다. 보다 복잡한 조건 설정을 지원합니다. exp의 작동 조건은 문자열로 처리되지 않으며 함수 및 필드 이름 사용을 포함하여 SQL에서 지원하는 모든 구문을 사용할 수 있습니다.

exp는 where 조건뿐만 아니라 다음과 같은 데이터 업데이트에도 사용됩니다.

$Dao = M("Article");
// 构建 save 的数据数组,文章点击数+1
$data[&#39;aid&#39;] = 10;
$data[&#39;counter&#39;] = array(&#39;exp&#39;,&#39;counter+1&#39;);
// 根据条件保存修改的数据
$User->save($data);
로그인 후 복사

참고: 숫자 필드의 더하기 및 빼기의 경우

위 내용은 전체 내용입니다. 이 글이 모든 분들에게 도움이 되었으면 좋겠습니다. 학습에 도움이 되셨으면 좋겠습니다. 더 많은 관련 내용을 보시려면 PHP 중국어 홈페이지를 주목해주세요!

관련 권장 사항:

ThinkPHP

Thinkphp5.0의 모듈 및 디렉터리 자동 생성 방법

위 내용은 thinkPHP에서 쿼리 표현식을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿