タイトルが'%'
示すように、Codeigniter の like クエリに配置できます
$this->db->like('title', 'match', 'before');
// Produces: WHERE title LIKE '%match'
連想配列の場合
$array = array('title' => $match, 'page1' => $match, 'page2' => $match);
$this->db->like($array);
// WHERE title LIKE '%match%' AND page1 LIKE '%match%' AND page2 LIKE '%match%'
より明確にするために、私のモデルには、選択クエリのほとんどを処理する関数があります。結果を取得するために配列パラメーターを送信します
function getTableData($table='', $fields='', $like=array(),$like1=array())
{
//Check For like statement
if(is_array($like) and count($like)>0)
$this->db->like($like);
if(is_array($like1) and count($like1)>0)
$this->db->or_like($like1);
//Check For Fields
if($fields!='')
$this->db->select($fields);
else
$this->db->select();
$result = $this->db->get();
//pr($result->result());
return $result;
}
これは私の一般的な関数なので、パラメーターとして送信するか、関数を変更することによって、ワイルドカードを使用して3番目のパラメーターを配置し、デフォルトでそのまま機能'both'
させることができます.
3 番目のパラメーターを使用して の配置を制御し%
ますが、連想配列を使用する場合、Codeigniter で配置するワイルドカードを実装するにはどうすればよいですか。別の列の連想配列で使用するにはどうすればよいですか? 私はカスタムクエリを使用できることを知っており、現在それを使用しています。ご不明な点がございましたら、よろしくお願いいたします。