es6.6.2 远程扩展词

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zch3210/article/details/89311482

1,在Ik分词的config文件IKAnalyzer.cfg.xml下 添加远程分词的目录,如我这里放在本地的Apache服务器下

2.给远程文件添加分词

  //添加分词(远程不需要重启)
    public function addCi()
    {
        $ci = '苏大强';
        file_put_contents("C:/xampp/htdocs/phpproject/tp5es/test.dic", $ci.PHP_EOL, FILE_APPEND);
    }

3. 添加的分词只对以后再添加的数据有效,对于历史数据并不会用新加入的分词再次进行分词,所以es提供了一个接口,

http://127.0.0.1:9200/index*/_update_by_query?conflicts=proceed

 // 添加分词后让历史数据生效
    public function history()
    {
       //初始化
        $curl = curl_init();
        //设置抓取的url
        curl_setopt($curl, CURLOPT_URL, 'http://127.0.0.1:9200/ceshitime/_update_by_query?conflicts=proceed');
        //设置头文件的信息作为数据流输出
        curl_setopt($curl, CURLOPT_HEADER, 1);
        //设置获取的信息以文件流的形式返回,而不是直接输出。
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        //设置post方式提交
        curl_setopt($curl, CURLOPT_POST, 1);
        //设置post数据
        $post_data = array(
        );
        curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
        //执行命令
        $data = curl_exec($curl);
        //关闭URL请求
        curl_close($curl);
        //显示获得的数据
        print_r($data);
    }

4. 精确搜索“苏大强”看是否能搜索到

 'term' => [ 'content' => '苏大强' ]

猜你喜欢

转载自blog.csdn.net/zch3210/article/details/89311482
今日推荐