SolrClient::addDocument Adds a document to the index &reftitle.description; public SolrUpdateResponseSolrClient::addDocument SolrInputDocumentdoc booloverwrite&true; intcommitWithin0 This method adds a document to the index. &reftitle.parameters; doc The SolrInputDocument instance. overwrite Whether to overwrite existing document or not. If &false; there will be duplicates (several documents with the same ID). PECL Solr < 2.0 $allowDups was used instead of $overwrite, which does the same functionality with exact opposite bool flag. $allowDups = false is the same as $overwrite = true commitWithin Number of milliseconds within which to auto commit this document. Available since Solr 1.4 . Default (0) means disabled. When this value specified, it leaves the control of when to do the commit to Solr itself, optimizing number of commits to a minimum while still fulfilling the update latency requirements, and Solr will automatically do a commit when the oldest add in the buffer is due. &reftitle.returnvalues; Returns a SolrUpdateResponse object or throws an Exception on failure. &reftitle.errors; Throws SolrClientException if the client had failed, or there was a connection issue. Throws SolrServerException if the Solr Server had failed to process the request. &reftitle.examples; <methodname>SolrClient::addDocument</methodname> example 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'); $updateResponse = $client->addDocument($doc); // you will have to commit changes to be written if you didn't use $commitWithin $client->commit(); print_r($updateResponse->getResponse()); ?> ]]> &example.outputs.similar; SolrObject Object ( [status] => 0 [QTime] => 1 ) ) ]]> <methodname>SolrClient::addDocument</methodname> example 2 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'); // No need to call commit() because $commitWithin is passed, so Solr Server will auto commit within 10 seconds $updateResponse = $client->addDocument($doc, false, 10000); print_r($updateResponse->getResponse()); ?> ]]> &example.outputs.similar; SolrObject Object ( [status] => 0 [QTime] => 1 ) ) ]]> &reftitle.seealso; SolrClient::addDocuments SolrClient::commit