mysql全文检索中文如何解决方法及实例代码

不是因为生活太现实,而对生活失望;而是知道生活太现实,所以更要用心的活下去。给自己一个拥抱。

mysql 全文检索中文解决方法

最近公司项目要求这样的功能,在数据库中检索中文,很是棘手,上网查询下资料,找的类似文章,这里及记录下,希望能帮助到大家,

实例代码:

<?php
/*
mysql全文检索中文解决方案!
*/
error_reporting(E_ERROR | E_WARNING | E_PARSE);
ini_set('display_errors', '1');
//数据库支持
class SaeMysql{
//phpmysql操作类
}
$DBS=new SaeMysql;
//数据加入
echo '2';
/*创建数据表*/
$DBS->runSql('CREATE TABLE IF NOT EXISTS `ces_articles` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT \'',
`url` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
PRIMARY KEY (`id`),
FULLTEXT KEY `url` (`url`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=DYNAMIC');
/*数据加入*/
$title="我爱大家啊,大家好";
$DBS->runSql('INSERT INTO `ces_articles` (id,title,url) VALUES (0,\''. $title.'',\''.str_replace('u','u',trim(json_encode($title))).'')');
$title="中国是什么";
$DBS->runSql('INSERT INTO `ces_articles` (id,title,url) VALUES (0,\''. $title.'',\''.str_replace('u','u',trim(json_encode($title))).'')');
$title="http://ask.1912news.com";
$DBS->runSql('INSERT INTO `ces_articles` (id,title,url) VALUES (0,\''. $title.'',\''.str_replace('u','u',trim(json_encode($title))).'')');
$title="问答系统";
$DBS->runSql('INSERT INTO `ces_articles` (id,title,url) VALUES (0,\''. $title.'',\''.str_replace('u','u',trim(json_encode($title))).'')');
$title="1912网";
$DBS->runSql('INSERT INTO `ces_articles` (id,title,url) VALUES (0,\''. $title.'',\''.str_replace('u','u',trim(json_encode($title))).'')');
$title="零九网络";
$DBS->runSql('INSERT INTO `ces_articles` (id,title,url) VALUES (0,\''. $title.'',\''.str_replace('u','u',trim(json_encode($title))).'')');
//搜索:
$_GET['q']="中国";
echo 'q';
if(isset($_GET['q'])){$sql=' match(url) against (\''.str_replace('u','u',trim(json_encode($_GET['q']))).'' IN BOOLEAN MODE)';}
$query = $DBS->getData('SELECT * FROM `ces_articles` where '.$sql.' LIMIT 10');
echo 'q';
if($query){
foreach ($query as $article){
echo $article['id'];
}
}

?>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

本文mysql全文检索中文如何解决方法及实例代码到此结束。用我们的奋斗和梦想扬起青春的船帆,当我们努力拼搏地摇浆时,成功的闸门也会慢慢地再为我们打开,我们将享受一份青春的美好,收获一份成功的喜悦。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
centos7 mysql5.7主从同步配置

centos7安装MySQL教程

达梦数据库DM8表空间管理之删除表空间

达梦数据库DM8表空间管理之创建表空间

国产达梦数据库常用SQL语句(上)