函数名:SolrClient::deleteByIds()
适用版本:SolrClient 4.0.0及以上版本
函数用法:这个函数用于从Solr索引中删除一个或多个文档,根据其唯一的ID。它接受一个ID数组作为参数,并返回一个SolrUpdateResponse对象,表示删除操作的结果。
语法:
SolrUpdateResponse SolrClient::deleteByIds(array $ids)
参数:
$ids
:一个包含一个或多个文档ID的数组。每个ID都必须是唯一的。
返回值:
- 一个SolrUpdateResponse对象,包含了删除操作的结果信息。
示例:
// 创建Solr客户端对象
$client = new SolrClient(array(
'hostname' => 'localhost',
'port' => 8983,
'path' => '/solr/'
));
// 删除单个文档
$docId = '12345';
$response = $client->deleteByIds(array($docId));
// 删除多个文档
$docIds = array('12345', '67890', '54321');
$response = $client->deleteByIds($docIds);
// 检查删除操作的结果
if ($response->success()) {
echo '删除成功';
} else {
echo '删除失败:' . $response->getHttpStatusMessage();
}
注意事项:
- 在调用此函数之后,需要调用SolrClient::commit()函数来提交删除操作,使其生效。
- 如果需要立即生效,可以使用SolrClient::commit(true)来进行强制提交。
- 请确保Solr服务器已经正确配置,并且可以通过提供的主机名、端口和路径进行访问。