laravel에서 다중 조건 퍼지 쿼리를 구현하는 방법과 프런트 엔드 선택 쿼리 옵션이 비어 있을 수 있습니다!

WBOY
풀어 주다: 2023-03-03 08:32:01
원래의
1659명이 탐색했습니다.

laravel에서 다중 조건 퍼지 쿼리를 구현하는 방법과 프런트 엔드 선택 쿼리 옵션이 비어 있을 수 있습니다! 예를 들어 여기에 제품 테이블이 있고 검색 옵션에는 제품 이름, 제품 가격, 제품 원산지 및 제품 가용성이 포함됩니다. 이러한 쿼리 조건은 비어 있지 않을 수 있지만 여전히 비어 있습니다. 100위안 가격이 이미 진열되어 있는 경우 다른 두 검색 옵션이 비어 있습니다. 예, 아니면 나열된 제품만 쿼리하고 다른 옵션은 비어 있습니다.

답글 내용:

laravel에서 다중 조건 퍼지 쿼리를 구현하는 방법과 프런트 엔드 선택 쿼리 옵션이 비어 있을 수 있습니다! 예를 들어 여기에 제품 테이블이 있고 검색 옵션에는 제품 이름, 제품 가격, 제품 원산지 및 제품 가용성이 포함됩니다. 이러한 쿼리 조건은 비어 있지 않을 수 있지만 여전히 비어 있습니다. 이미 선반에 있는 100위안의 가격으로 다른 두 검색 옵션이 비어 있습니다. 예 또는 나열된 제품만 쿼리하면 다른 옵션이 비어 있습니다.

<code>$handle = DB::table('table_name');

// 如果条件1为真的时候
$keywords1 && $handle->where('field_name','like','%' . $keywords1 . '%');
// 如果条件2为真的时候
$keywords2 && $handle->where('field_name','like','%' . $keywords2 . '%');
// 如果条件3为真的时候
...


// 获取数据
$handle->get();

</code>
로그인 후 복사

ORM인 경우:

<code>$handle = new Model();

 // 如果条件1为真的时候
$keywords1 && $handle->where('field_name','like','%' . $keywords1 . '%');
// 如果条件2为真的时候
$keywords2 && $handle->where('field_name','like','%' . $keywords2 . '%');
// 如果条件3为真的时候
...

一样的</code>
로그인 후 복사

<code class="php">//画蛇添足下
$handle = \DB::table('table_name');
$where = '1=1 ';
if($condition1) {
  $where.= ' and field_name like "%' . $keywords1 . '%"';
} elseif($condition2) {
  $where.= ' and field_name like "%' . $keywords2 . '%"';
}
$res = $handle->whereRaw($where)->get();
</code>
로그인 후 복사
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!