Rechercher une fonction PHP

SolrClient::addDocument

(PECL solr >= 0.9.2)

SolrClient::addDocumentAjoute un document à l'index

Description

public SolrClient::addDocument ( SolrInputDocument $doc [, bool $overwrite = TRUE [, int $commitWithin = 0 ]] ) : SolrUpdateResponse

Cette méthode ajoute un document à l'index.

Retour à la première page de Manuel PHP  Table des matières Haut

Liste de paramètres

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).

Avertissement

PECL Solr < 2.0 $allowDups était utilisé à la place de $overwrite ; il s'agit de la même fonctionalité, 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.

Retour à la première page de Manuel PHP  Table des matières Haut

Valeurs de retour

Retourne un objet SolrUpdateResponse et lance une exception si une erreur survient.

Retour à la première page de Manuel PHP  Table des matières Haut

Erreurs / Exceptions

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.

Retour à la première page de Manuel PHP  Table des matières Haut

Exemples

Exemple #1 Exemple avec SolrClient::addDocument() 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');

$updateResponse $client->addDocument($doc);

// vous devriez valider ces modifications si vous n'utilisez pas $commitWithin
$client->commit();

print_r($updateResponse->getResponse());

?>

L'exemple ci-dessus va afficher quelque chose de similaire à :


SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 1
        )

)

Exemple #2 Exemple 2 avec SolrClient::addDocument()

<?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');

// Inutile d'appeler commit() car $commitWithin est passé ; ainsi,
// le serveur Solr va valider automatiquement dans les 10 secondes

$updateResponse $client->addDocument($docfalse10000);

print_r($updateResponse->getResponse());

?>

L'exemple ci-dessus va afficher quelque chose de similaire à :


SolrObject Object
(
    [responseHeader] => SolrObject Object
        (
            [status] => 0
            [QTime] => 1
        )

)

Retour à la première page de Manuel PHP  Table des matières Haut

Voir aussi

Rechercher une fonction PHP

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-solrclient.adddocument.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut