てすと

MySQLの全文検索で使うために作ったやつ

MySQLの全文検索で使うために作ったやつ

  • タグ:
  • タグはありません
function parseTextForGroonga ($keyword) {
$inputKeyword = $keyword;
$inputKeyword = mb_ereg_replace('',' ',$inputKeyword);
$inputKeyword = str_getcsv($inputKeyword, ' ', '"');
$searchString = array_shift($inputKeyword);
$inBooleanMode = false;
if (count($inputKeyword) > 0) {
$orFlg = false;
foreach ($inputKeyword as $k) {
if (strlen($k) < 1) continue;
if ($orFlg == false) {
if (substr($k,0,1) == '-') {
$searchString .= ' ';
} else if (strtoupper($k) == 'OR') {
$searchString .= ' OR ';
$orFlg = true;
continue;
} else {
$searchString .= ' +';
}
} else {
$orFlg = false;
}
$searchString .= $k;
$inBooleanMode = true;
}
}
return array('text'=>$searchString,'mode'=>$inBooleanMode);
}
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX