Laravel Eloquent ORM 다 중 조건 조회 의 예

1.수요:
데이터 검색 을 할 때 가장 흔히 볼 수 있 는 것 은 같은 방법 으로 조회 하 는 것 이다.그러나 조회 하 는 필드 는 그 중의 하나 또는 그 중의 몇 개의 필드 를 함께 조합 하여 조회 할 수 있다.예 를 들 어 목록 에 대한 검색 은 기본적으로 몇 개의 필드 를 임의로 조합 하여 검색 하 는 것 이다.그러면 모델 에 서 는 그 필드 조합 이 있 고 어떻게 조합 하 는 지 판단 해 야 한다.
인터넷 에서 한참 을 찾 았 는데 Laravel 그룹 에서 도 몇 개 물 어 봤 어 요.안 써 봤 다 고 하 니까 직접 써 보 세 요.말 이 많 지 않 으 니 코드 를 보십시오.

function findByParam($param = array()) 
 { 
  $select = new Customer(); 
  if (isset($param['name']) && '' != $param['name']) 
  { 
   $select = $select->where('customer.name', '=', $param['name']); 
  } 
  if (isset($param['phone']) && '' != $param['phone']) 
  { 
   $select = $select->where('customer.phone', '=', $param['phone']); 
  } 
  if (isset($param['email']) && '' != $param['email']) 
  { 
   $select = $select->where('customer.email', '=', $param['email']); 
  } 
  if (isset($param['tel']) && '' != $param['tel']) 
  { 
   $select = $select->where('customer.tel', '=', $param['tel']); 
  } 
  if (isset($param['qq']) && '' != $param['qq']) 
  { 
   $select = $select->where('customer.qq', '=', $param['qq']); 
  } 
  if (isset($param['IDCard']) && '' != $param['IDCard']) 
  { 
   $select = $select->where('customer.IDCard', '=', $param['IDCard']); 
  } 
   
  $customers = $select->leftJoin("member", function ($join) 
  { 
   $join->on("customer.memberID", "=", "member.id"); 
  }) 
   ->get(array( 
   'customer.id', 
   'customer.name', 
   'customer.sex', 
   'customer.tel', 
   'customer.phone', 
   'customer.address', 
   'customer.email', 
   'customer.qq', 
   'customer.headPic', 
   'customer.birthday', 
   'customer.IDCard', 
   'customer.enable', 
   'customer.memberID', 
   'customer.IDCard', 
   'customer.info', 
   'member.name as mname', 
   'member.discount' 
  )); 
  return json_encode($customers); 
호출 할 때 controller 에 서 는 이 필드 만 받 아야 합 니 다.값 이 있 든 없 든$param 배열 에 직접 가입 하여 조회 하면 됩 니 다.예 를 들 어:

function anyFindbyparam() 
 { 
  $name = Input::get('name'); 
  $tel = Input::get('tel'); 
  $phone = Input::get('phone'); 
  $email = Input::get('email'); 
  $qq = Input::get('qq'); 
  $IDCard = Input::get('IDCard'); 
  $customer = new Customer(); 
  $customers = $customer->findByParam(array( 
   'name' => $name, 
   'tel' => $tel, 
   'phone' => $phone, 
   'email' => $email, 
   'qq' => $qq, 
   'IDCard' => $IDCard 
  )); 
  return $customers; 
 } 
이상 의 이 Laravel Eloquent ORM 다 중 조건 조회 의 예 는 바로 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.여러분 에 게 참고 가 되 고 여러분 들 이 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기