- 新手上路
- 了解基础对象
- 编写项目配置文件
- 管理索引
- 使用搜索
- 使用辅助工具
- 专题
删除文档
当某一条数据(文档)已经过期或失效,则必须将它从索引数据库中移除,才能从搜索结果中消失。
在 Xunsearch PHP-SDK
中删除文档有下面两种方式。
主键是指项目中类型为 id
的字段,删除是调用的是 XSIndex::del 方法,传入参数必须是
要删除的文档的主键值
,或一系列主键值组成的数组
。
$index->del('123'); // 删除主键值为 123 的记录 $index->del(array('123', '789', '456')); // 同时删除主键值为 123, 789, 456 的记录
在项目中,除了主键之外我们通常也会对其它字段进行索引。如果该字段的索引方式(即配置文件中
index
选项的值)为 self
或 both
,那么也可以根据该字段上的索引词进行删除。
特别注意是根据索引词删除而不是该字段的值,索引词是指该字段值经过分词器处理后得到的词汇。
对于索引方式为 mixed
的,如需删除,请把字段名设为类型为 body
的字段的名称。
$index->del('abc', 'subject'); // 删除字段 subject 上带有索引词 abc 的所有记录 $index->del(array('abc', 'def'), 'subject'); // 删除字段 subject 上带有索引词 abc 或 def 的所有记录
Note: 如果您删除时指定的主键或字段索引词包含中文字符,则它的编码必须与整个项目的 默认字符集 XS::defaultCharset 一致。
此外删除操作和添加文档一样,也是一个异步行为。
$Id$
留下一条评论吧!
请到论坛 登录 后刷新本页面!