(PECL solr >= 0.9.2)
SolrClient::addDocuments — Adds a collection of SolrInputDocument instances to the index
$docs
[, bool $allowDups = false
[, int $commitWithin = 0
]] )Adds a collection of documents to the index.
docsAn array containing the collection of SolrInputDocument instances. This array must be an actual variable.
allowDups
If FALSE duplicates will be overwritten.
commitWithinNumber of milliseconds within which to commit the documents to the index. This was only available since Solr 1.4
Returns a SolrUpdateResponse object on success and throws a SolrClientException on failure.
Example #1 SolrClient::addDocuments() example
<?php
$options = array
(
'hostname' => SOLR_SERVER_HOSTNAME,
'login' => SOLR_SERVER_USERNAME,
'password' => SOLR_SERVER_PASSWORD,
'port' => SOLR_SERVER_PORT,
);
$client = new SolrClient($options);
$doc = new SolrInputDocument();
$doc->addField('id', 334455);
$doc->addField('cat', 'Software');
$doc->addField('cat', 'Lucene');
$doc2 = clone $doc;
$doc2->deleteField('id');
$doc2->addField('id', 334456);
$docs = array($doc, $doc2);
$updateResponse = $client->addDocuments($docs);
print_r($updateResponse->getResponse());
?>
The above example will output something similar to:
SolrObject Object
(
[responseHeader] => SolrObject Object
(
[status] => 0
[QTime] => 2
)
)