这篇文章主要介绍了 mysql 全文检索中文解决方法及实例代码的相关资料, 需要的朋友可以参考下
MySQL 是一个开放源码的小型关联式数据库管理系统,开发者为瑞典 MySQL AB 公司。MySQL 被广泛地应用在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 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'];
- }
- }
- ?>
来源: http://www.phperz.com/article/17/0317/326147.html