0
私は検索機能を備えたアプリケーションを作成しています。私はfind()
関数の外でフィルタクエリを構築したいので、適用されるべき多くのフィルタはCakePHP 3.4
アプリケーションcakephpの配列をクエリに構築する3
であり、これは私がIN BETWEEN
クエリの配列でクエリを作成する方法
$start_year = $this->request->getQuery('start_year');
$end_year = $this->request->getQuery('end_year');
$keyword = $this->request->getQuery('keyword');
$make = $this->request->getQuery('make');
$query_builder = [];
if (!empty($keyword)) {
$query_builder['keyword'] = $keyword;
}
if (!empty($make)) {
$query_builder['make'] = $make;
}
if (!empty($start_year) && empty($end_year))
{
$query_builder['year >'] = $start_year;
}
if (empty($start_year) && !empty($end_year)) {
$query_builder['year <'] = $end_year;
}
if (!empty($start_year) && !empty($end_year)) {
// how to written in BETWEEN query here on year column
}
$results = $this->Model->find()
->where($query_builder);
を達成したいものです?
ありがとう。 +1これは –
2番目の例では動作しません[**バインディング値**](https://stackoverflow.com/questions/26430259/cakephp-3-0-between-find-condition)のように動作しませんそれはもはやCakePHP 3.x! – ndm