codecamp

更新、修改文档

在 Xunsearch PHP-SDK 中,更新、修改文档和添加文档的做法非常的类似, 只不过调用的是XSIndex::update,并且在内部处理上有所区别。

如果索引数据库中已存在主键值相同的文档,那么相当于先删除原有的文档,再用当前文档替换它。 如果未存在主键值相同的文档,则效果和添加文档完全一致。

Info: 有人可能会想,既然如此为什么还要有 XSIndex::add 呢,因为添加文档少了一个判断 过程,具有更高一些的效率。因此,如果您在使用 API 时能明确知道当前文档是新增的,那么 还是建议使用 add这个 API

示范代码如下:

$data = array(

    'pid' => 234,// 此字段为主键,是进行文档替换的唯一标识

    'subject' => '测试文档的标题',

    'message' => '测试文档的内容部分',

    'chrono' => time(),

);

// 创建文档对象

$doc = new XSDocument;

$doc->setFields($data);

// 更新到索引数据库中

$index->update($doc);


添加文档
删除文档
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

了解基础对象方法

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }