Yii2框架整合Xunsearch搜索引擎的方法
本文实例讲述了yii2框架整合xunsearch搜索引擎的方法。分享给大家供大家参考,具体如下:
公司一直用的yii2框架,然后要做一个中文搜索引擎,所有想的xunsearch这个项目,之前有文章提到了,怎么安装xunsearch服务端。(参考《php在innodb引擎下快速代建全文搜索功能简明教程》)
xunsearch暂时只有liunx的服务端和php-sdk。但作者确提供了一个yii2的扩展。突然感觉好幸福的说。
本来是通过使用php-sdk写一个简单的添加索引和更新索引还有删除索引的功能,但有考虑到多项目的情况。就是一个xunsearch可以被多个项目公用,所有配置文件放置在每一个项目的配置文件里面,根据这个项目的配置文件来区分每一个搜索数据库。这是我一开始的想法,但重点是不是怎么想,而是怎么去做。实践才是硬道理,然后就遇到下面的这些问题。
这里目标链接,我接下来要说下安装心得
// application components 'components => [ // ... other components ... 'xunsearch' => [ 'class' => 'hightman\xunsearch\connection', // 此行必须,这里不一定是这写的,可能是hightman.xunsearch.connection 根据实际项目出发 'inidirectory' => '@app/config', // 搜索 ini 文件目录,默认:@vendor/hightman/xunsearch/app 'charset' => 'utf-8', // 指定项目使用的默认编码,默认即时 utf-8,可不指定 ], ],
然后,如果你的php环境是集成的安装包,可能会遇到这么一个问题
unexpected character in input: '\' (ascii=92) state=1
网上有人说是 php.ini 里面的配置问题,说把,short_open_tag 改成 on,我第一看感觉很有道理,然后找到发现,本来就是on。
然后到http://*.com(全世界的技术都在用的一个技术论坛,官方语言是英语)上面去找,果然找到了。知道真相的我,真的是不想多了。
因为那个yii2的扩展用到了php5.3才有的命名空间特效。而我的本地php版本是5.2.6。我表示淡定不了。折磨一天的事情,居然是因为php版本太低。。。
就总结到这里。
更多关于php相关内容感兴趣的读者可查看本站专题:《php正则表达式用法总结》、《php curl用法总结》、《php数组(array)操作技巧大全》、《php排序算法总结》、《php常用遍历算法与技巧总结》、《php数据结构与算法教程》、《php程序设计算法总结》、《php数学运算技巧总结》、《php运算与运算符用法总结》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家php程序设计有所帮助。