2010-05-11 2 views
1

У меня есть функция в моей модели, что мне нужно использовать несколько условий при запросе. Кроме того, я хотел бы также иметь частичные совпадения.Как указать несколько условий и тип условия с помощью Zend_Db_Table

я в настоящее время:

public function searchClient($search_term) 
{ 
$rows = $this->fetchAll(
    $this->select() 
    ->where('first_name = ?', $search_term) 
    ); 
    return $rows->toArray(); 
} 

Что является эквивалентом "SELECT * FROM клиентов WHERE first_name = 'Foobar';"

Я хотел бы иметь функцию, эквивалентную "SELECT * FROM clients WHERE first_name LIKE '% foobar%' ИЛИ ​​last_name LIKE '% foobar%' ИЛИ ​​home_phone LIKE '% foobar%';"

Как создать такой запрос в Zend_Db_Table?

ответ

1
public function searchClient($search_term) 
{ 
    $rows = $this->fetchAll(
     $this->select()->where('first_name LIKE ?', "%$search_term%") 
         ->orWhere('last_name LIKE ?', "%$search_term%") 
         ->orWhere('home_phone LIKE ?', "%$search_term%") 
     ); 
    return $rows->toArray(); 
} 
+0

Прекрасный !!! Работает отлично. – Mario

Смежные вопросы