Я пытаюсь найти лучший способ выполнить эти типы запросов
Что я хочу сделать, это построить функцию типа фильтра, где я был в массиве, и запрос построен!
проблема в PDO, прежде чем вы сможете связать значение, необходимое для подготовки оператора, но если я подготовлю оператор, я не смогу изменить запрос.
Позвольте мне показать вам пример:
public function GetFeedsByFilter($filter = array())
{
//Base Query
$Query = 'SELECT feeds,sites,users,categories WHERE feed_site_id = site_id AND feed_uid = user_id AND feed_category_id = category_id';
if(isset($filter['limit'])){$filter['limit'] = 30;} //Setters
//Check the different filters
if(isset($filter['category']))
{
//Here I want to bind the category
//i can do the following
$Query .= ' AND category_id = :cid';
//But now I cant bind the value with $statement->bindValue
}
}
Теперь я могу сначала создать строку для запроса, а затем выполнить все операторы if, чтобы связать их, но это очень много!
Есть идеи, как мне решить эту проблему?