基本实践
1 | <?php |
异常捕获
1 | try |
XSDocument 文档
docid() 取得搜索结果文档的 docid 值 (实际数据库内的 id,一般用不到)
rank() 取得搜索结果文档的序号值 (第X条结果)
percent() 取得搜索结果文档的匹配百分比 (结果匹配度, 1~100)
weight() 取得搜索结果文档的权重值 (浮点数)
ccount() 取得搜索结果折叠的数量 (按字段折叠搜索时才有效)
添加操作
1 | <?php |
1 | <?php |
1 | <?php |
建立索引的过程会有点延迟!
1 | $index->add($doc)->flushIndex() |
可以临时处理成同步的。
ini
string 字符型,适用多数情况,也是默认值
numeric 数值型,包含整型和浮点数,仅当字段需用于以排序或区间检索时才设为该类型,否则请使用 string 即可
date 日期型,形式为 YYYYmmdd 这样固定的 8 字节,如果没有区间检索或排序需求不建议使用
id 主键型,确保每条数据具备唯一值,是索引更新和删除的凭据,每个搜索项目必须有且仅有一个 id 字段,该字段的值不区分大小写
title 标题型,标题或名称字段,至多有一个该类型的字段
body 内容型,主内容字段, 即本搜索项目中内容最长的字段,至多只有一个该类型字段,本字段不支持字段检索
1 | type = string |
更新、修改文档
如果索引数据库中已存在主键值相同的文档,那么相当于先删除原有的文档,再用当前文档替换它。 如果未存在主键值相同的文档,则效果和添加文档完全一致。
1 | <?php |
删除文档
1.按主键删除
1 | <?php |
2.按内容删除
1 | <?php |
此外删除操作和添加文档一样,也是一个异步行为。
清空索引
1 | // 创建xs |
平滑重建索引
1 | <?php |
使用索引缓冲区
一次性提交服务操作
1 | <?php |
自定义 SCWS 词库
1.全局自定义词库
1 | $prefix/etc/dict_user.txt |
1 | # Custom dictionary for scws (UTF-8 encoding) |
2.项目自定义词库(这个貌似更好的读取)
1 | $prefix/data/项目名称/dict_user.txt |
转载https://www.cnblogs.com/jiqing9006/p/9254726.html
手册https://api.yuhal.com/file/xs_php_manual.chm