首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SolrInputDocument::addChildDocuments

(PECL solr >= 2.3.0)

SolrInputDocument::addChildDocuments — Adds an array of child documents

Description

代码语言:javascript
复制
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

代码语言:javascript
复制
<?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:

代码语言:javascript
复制
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 →

代码语言:txt
复制
 ? 1997–2017 The PHP Documentation Group

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

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com