SolrClient::addDocument()
函数用于向 Solr 服务器添加文档。
用法:
public SolrUpdateResponse SolrClient::addDocument(SolrInputDocument $doc [, bool $overwrite = true [, int $commitWithin = 0 ]])
参数:
$doc
:一个SolrInputDocument
对象,表示要添加到 Solr 服务器的文档。$overwrite
(可选):一个布尔值,指定是否覆盖现有的文档。默认为true
,表示覆盖。$commitWithin
(可选):一个整数,表示在多少毫秒内对添加的文档进行提交。默认为0
,表示立即提交。
返回值:
SolrUpdateResponse
对象,表示添加文档的响应。
示例:
// 创建 Solr 客户端连接
$options = array(
'hostname' => 'localhost',
'port' => 8983,
'path' => '/solr/'
);
$client = new SolrClient($options);
// 创建一个 SolrInputDocument 对象,并设置字段值
$doc = new SolrInputDocument();
$doc->addField('id', '1');
$doc->addField('title', 'Example Document');
$doc->addField('content', 'This is an example document for testing purposes.');
// 添加文档到 Solr 服务器
$response = $client->addDocument($doc);
// 检查添加文档的响应
if ($response->success()) {
echo 'Document added successfully.';
} else {
echo 'Failed to add document. Error: ' . $response->getHttpStatusMessage();
}
在上面的示例中,首先创建了一个 SolrClient
对象来连接 Solr 服务器。然后,创建一个 SolrInputDocument
对象,并使用 addField()
方法设置字段值。最后,调用 addDocument()
函数将文档添加到 Solr 服务器。根据添加文档的响应,可以确定是否成功添加了文档。