PHP
Solr

SolrInputDocument::addChildDocuments

SolrInputDocument::addChildDocuments

(PECL solr >= 2.3.0)

SolrInputDocument::addChildDocuments — Adds an array of child documents

Description

public void SolrInputDocument::addChildDocuments ( array &$docs )

Adds an array of child documents to the current input document.

Parameters

docs

An array of SolrInputDocument objects.

Errors/Exceptions

Throws SolrIllegalArgumentException on failure.

Throws SolrException on internal failure.

Return Values

Examples

Example #1 SolrInputDocument::addChildDocuments() example

<?php include "bootstrap.php"; $options = array (     'hostname' => SOLR_SERVER_HOSTNAME,     'login'    => SOLR_SERVER_USERNAME,     'password' => SOLR_SERVER_PASSWORD,     'port'     => SOLR_SERVER_PORT,     'path'     => SOLR_SERVER_STORE_PATH, $client = new SolrClient($options $product = new SolrInputDocument( $product->addField('id', 'P-BLACK' $product->addField('cat', 'tshirt' $product->addField('cat', 'polo' $product->addField('content_type', 'product' $small = new SolrInputDocument( $small->addField('id', 'TS-BLK-S' $small->addField('content_type', 'sku' $small->addField('size', 'S' $small->addField('inventory', 100 $medium = new SolrInputDocument( $medium->addField('id', 'TS-BLK-M' $medium->addField('content_type', 'sku' $medium->addField('size', 'M' $medium->addField('inventory', 200 $large = new SolrInputDocument( $large->addField('id', 'TS-BLK-L' $large->addField('content_type', 'sku' $large->addField('size', 'L' $large->addField('inventory', 300 // add child documents  $skus = [$small, $medium, $large]; $product->addChildDocuments($skus // add the product document block to the index $updateResponse = $client->addDocument(         $product,         true, // overwrite if the document exists         10000 // commit within 10 seconds print_r($updateResponse->getResponse()

The above example will output something similar to:

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

See Also

  • SolrInputDocument::addChildDocument() - Adds a child document for block indexing

  • SolrInputDocument::hasChildDocuments() - Returns true if the document has any child documents

  • SolrInputDocument::getChildDocuments() - Returns an array of child documents (SolrInputDocument)

  • SolrInputDocument::getChildDocumentsCount() - Returns the number of child documents

← SolrInputDocument::addChildDocument

SolrInputDocument::addField →

© 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

https://secure.php.net/manual/en/solrinputdocument.addchilddocuments.php