SolrClient::addDocument Ajoute un document à l'index &reftitle.description; public SolrUpdateResponseSolrClient::addDocument SolrInputDocumentdoc booloverwrite&true; intcommitWithin0 Cette méthode ajoute un document à l'index. &reftitle.parameters; doc L'instance SolrInputDocument. overwrite Si l'on doit ou non écraser un document existant. Si vaut &false;, il sera dupliqué (plusieurs documents avec le même ID). PECL Solr < 2.0 $allowDups était utilisé à la place de $overwrite ; il s'agit de la même fonctionnalité, mais avec une valeur opposée. $allowDups = false est identique à $overwrite = true commitWithin Nombre de millisecondes après lequel le document doit être valié. Disponible depuis Solr 1.4. Par défaut, vaut 0 (désactivé). Lorsque cette valeur est spécifiée, elle laisse le contrôle à Solr sur le moment où la validation doit être réalisée, permettant ainsi d'optimiser le nombre de validations, et donc, de mieux contrôler les eigences de latence des mises à jour ; Solr va automatiquement réaliser une validation lorsque le plus vieille ajout du buffer est atteint. &reftitle.returnvalues; Retourne un objet SolrUpdateResponse et lance une exception si une erreur survient. &reftitle.errors; Lance une exception SolrClientException si le client a échoué ou s'il y a eu un problème avec la connexion. Lance une exception SolrServerException si le serveur Solr a échoué dans l'exécution de la requête. &reftitle.examples; Exemple avec <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); // vous devriez valider ces modifications si vous n'utilisez pas $commitWithin $client->commit(); print_r($updateResponse->getResponse()); ?> ]]> &example.outputs.similar; SolrObject Object ( [status] => 0 [QTime] => 1 ) ) ]]> Exemple 2 avec <methodname>SolrClient::addDocument</methodname> 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'); // Inutile d'appeler commit() car $commitWithin est passé ; ainsi, // le serveur Solr va valider automatiquement dans les 10 secondes $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