Yii2框架整合Xunsearch搜索引擎的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了Yii2框架整合Xunsearch搜索引擎的方法。分享给大家供大家参考,具体如下:

公司一直用的YII2框架,然后要做一个中文搜索引擎,所有想的Xunsearch这个项目,之前有文章提到了,怎么安装Xunsearch服务端。(参考《PHP在innodb引擎下快速代建全文搜索功能简明教程》)

xunsearch暂时只有Liunx的服务端和PHP-SDK。但作者确提供了一个YII2的扩展。突然感觉好幸福的说。

本来是通过使用PHP-SDK写一个简单的添加索引和更新索引还有删除索引的功能,但有考虑到多项目的情况。就是一个Xunsearch可以被多个项目公用,所有配置文件放置在每一个项目的配置文件里面,根据这个项目的配置文件来区分每一个搜索数据库。这是我一开始的想法,但重点是不是怎么想,而是怎么去做。实践才是硬道理,然后就遇到下面的这些问题。

http://www.yiiframework.com/extension/yii-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://stackoverflow.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程序设计有所帮助。

相关文章

PHP怎样用正则抓取页面中的网址

前言 链接也就是超级链接,是从一个元素(文字、图片、视频等)链接到另一个元素(文字、图片、视频等)。网页中的链接一般有三种,一种是绝对URL超链接,也就是一个页面的完整路径;另一种是相对...

php启动时候提示PHP startup的解决方法

php启动时候提示PHP startup的解决方法

最近在学习php,配置好php环境后,每次开机都有警告提示说 PHP startup。如下图: 显然这是个小问题,是关于php配置的。 解决这个问题很简单只需要在php.ini 文件中修...

谈谈新手如何学习PHP网络编程第1/2页

文章开头就列举了那么多联系方式,难免会让大家感觉有点AD的意味,但是不容质疑的是,默默的确有那么丁点的表现欲^_^,虽然有时候过于细致会被人说婆妈,但是幸好这种细致对于编程来说,还是蛮有...

PHP中的替代语法简介

替代语法是PHP程序设计中不常见到,有时却又很重要的一个概念。今天本文就以实例形式展示了这一概念的用法。 查看一下wordpress的代码,里面可以见到有些少见的php替代语法,如下所示...

php 判断数组是几维数组

复制代码 代码如下:<?php/** * 返回数组的维度 * @param  [type] $arr [description] * @re...