3

最近、codeigniter アプリケーションのバックエンド クエリをアクティブ レコード パターンに変換し始めました。現在、私は codeigniter 2.1 バージョンを使用しています。私はもともとmysqlでクエリを次のように書いています

SELECT * FROM table WHERE (field1 = $field1 OR field2 = $field2) AND field3 = $field3 AND field4 = 'text'

今、私はこのことを以下に示す方法で書きたいと思います:

$this->db->select('*');
$this->db->from('table');
$this->db->where('field1',$field1);
$this->db->or_where('field2',$field1);
$this->db->where('field3',$field2);
$this->db->where('field4','text');

しかし、どういうわけか「or_where」関数が正しく機能していません。これに対する解決策はありますか?

4

1 に答える 1

2

カスタム文字列を書き込みますActive Record

$where = "(field1 = " . $field1 . " OR field2 = " . $field2 . ") AND 
          field3 = ". $field3 . " AND field4 = 'text'";
$this->db->where($where);

ソースはここをクリック: Active Record (カスタム文字列を参照)

于 2012-10-20T07:24:03.080 に答える