てきとう

ワーワーゆうとります

CakePHP mysqlのfulltext使うよー

ヒダカさんお誕生日エンダァご結婚おめでとうございマシータ。
なぜかわたくしがデコメールもらいました。おめでとうって。僕じゃないぞ。

$result = $this->Hoge->find('all', array('conditions' => "MATCH ( hogehoge ) AGAINST ('BEAT CRUSADERS')"));

//複数条件でも無理矢理
$result = $this->Hoge->find('all', array(
  'conditions' => array('type'=>'mogemoge', 
    "MATCH ( hogehoge ) AGAINST ('BEAT CRUSADERS')"
  )
));

//AND検索の場合
$result = $this->Hoge->find('all', array(
  'conditions' => array('type'=>'mogemoge', 
    "MATCH ( hogehoge ) AGAINST ('*D+ BEAT CUSADERS' IN BOOLEAN MODE)"
  )
));

なんだか、Dのあとを+にしたらANDでORにしたらORみたいです。

テーブル作る時もインデックス張るのに気をつけれ。

CREATE TABLE hoge (
  id int(4) NOT NULL auto_increment,
  type int(11) NOT NULL,
  hogehoge text NOT NULL,
  created datetime default NULL,
  modified datetime default NULL,
  PRIMARY KEY  (id),
  FULLTEXT KEY hogehoge USING MECAB, NORMALIZE, 512 (hogehoge`)
) ENGINE=MyISAM AUTO_INCREMENT=378 DEFAULT CHARSET=utf8 |

sennaめかぶが便利すぎて吐きそうです。
それにしても男気あふれるコードですね。

広告を非表示にする