라이브러리

[PHP] SolrClient::addDocument - 인덱스에 문서를 추가합니다.




PHP에서 SolrClient::addDocument 사용하기


Apache Solr는 검색 엔진으로 사용할 수 있는 오픈 소스 소프트웨어입니다. PHP에서 SolrClient를 사용하여 문서를 추가할 수 있습니다. 이 문서에서는 SolrClient::addDocument 메서드를 사용하여 문서를 추가하는 방법에 대해 설명합니다.

# SolrClient::addDocument 메서드


SolrClient::addDocument 메서드는 Solr 서버에 문서를 추가하는 메서드입니다. 이 메서드는 문서의 필드를 지정하여 문서를 추가할 수 있습니다.

# 예제


아래 예제에서는 SolrClient::addDocument 메서드를 사용하여 문서를 추가하는 방법을 설명합니다.

#hostingforum.kr
php

// SolrClient 인스턴스 생성

$client = new SolrClient(array(

    'host' => 'localhost',

    'port' => 8983,

    'path' => '/solr',

));



// 문서를 추가할 필드 지정

$document = array(

    'id' => '1',

    'name' => 'John Doe',

    'age' => 30,

);



// 문서 추가

$result = $client->addDocument($document);



// 결과 확인

if ($result->getResponse()->getStatusCode() == 200) {

    echo "문서가 성공적으로 추가되었습니다.";

} else {

    echo "문서 추가에 실패했습니다.";

}



// 문서 추가 후 commit

$client->commit();



# 필드 지정


SolrClient::addDocument 메서드는 문서의 필드를 지정하여 문서를 추가할 수 있습니다. 필드는 다음과 같이 지정할 수 있습니다.

* `id`: 문서의 고유 아이디입니다.
* `name`: 문서의 이름입니다.
* `age`: 문서의 나이입니다.

# 결과 확인


SolrClient::addDocument 메서드는 결과를 반환합니다. 결과는 다음과 같이 확인할 수 있습니다.

* `getResponse()->getStatusCode()`: 결과의 HTTP 상태 코드입니다.
* `getResponse()->getBody()`: 결과의 바디입니다.

# 문서 추가 후 commit


문서를 추가한 후에는 commit을 호출하여 문서를 저장해야 합니다. commit을 호출하지 않으면 문서가 저장되지 않습니다.

# 예제 2: 필드 지정


아래 예제에서는 필드를 지정하여 문서를 추가하는 방법을 설명합니다.

#hostingforum.kr
php

// SolrClient 인스턴스 생성

$client = new SolrClient(array(

    'host' => 'localhost',

    'port' => 8983,

    'path' => '/solr',

));



// 문서를 추가할 필드 지정

$document = array(

    'id' => '2',

    'name' => 'Jane Doe',

    'age' => 25,

    'address' => array(

        'street' => '123 Main St',

        'city' => 'Anytown',

        'state' => 'CA',

        'zip' => '12345',

    ),

);



// 문서 추가

$result = $client->addDocument($document);



// 결과 확인

if ($result->getResponse()->getStatusCode() == 200) {

    echo "문서가 성공적으로 추가되었습니다.";

} else {

    echo "문서 추가에 실패했습니다.";

}



// 문서 추가 후 commit

$client->commit();



# 필드 지정 예제


아래 예제에서는 필드를 지정하여 문서를 추가하는 방법을 설명합니다.

* `address`: 주소 필드는 객체로 지정됩니다.
* `street`: 주소 필드의 스트리트 필드는 문자열로 지정됩니다.
* `city`: 주소 필드의 시 필드는 문자열로 지정됩니다.
* `state`: 주소 필드의 주 필드는 문자열로 지정됩니다.
* `zip`: 주소 필드의 우편번호 필드는 문자열로 지정됩니다.

# 결과 확인 예제


아래 예제에서는 결과를 확인하는 방법을 설명합니다.

* `getResponse()->getStatusCode()`: 결과의 HTTP 상태 코드입니다.
* `getResponse()->getBody()`: 결과의 바디입니다.

# 문서 추가 후 commit 예제


아래 예제에서는 문서를 추가한 후 commit을 호출하는 방법을 설명합니다.

* `commit()`: 문서를 추가한 후 commit을 호출하여 문서를 저장합니다.

# 예제 3: 필드 지정과 결과 확인


아래 예제에서는 필드를 지정하여 문서를 추가하고 결과를 확인하는 방법을 설명합니다.

#hostingforum.kr
php

// SolrClient 인스턴스 생성

$client = new SolrClient(array(

    'host' => 'localhost',

    'port' => 8983,

    'path' => '/solr',

));



// 문서를 추가할 필드 지정

$document = array(

    'id' => '3',

    'name' => 'John Doe',

    'age' => 30,

    'address' => array(

        'street' => '123 Main St',

        'city' => 'Anytown',

        'state' => 'CA',

        'zip' => '12345',

    ),

);



// 문서 추가

$result = $client->addDocument($document);



// 결과 확인

if ($result->getResponse()->getStatusCode() == 200) {

    echo "문서가 성공적으로 추가되었습니다.";

} else {

    echo "문서 추가에 실패했습니다.";

}



// 문서 추가 후 commit

$client->commit();



// 결과 확인

if ($result->getResponse()->getStatusCode() == 200) {

    echo "문서가 성공적으로 저장되었습니다.";

} else {

    echo "문서 저장에 실패했습니다.";

}



# 필드 지정과 결과 확인 예제


아래 예제에서는 필드를 지정하여 문서를 추가하고 결과를 확인하는 방법을 설명합니다.

* `address`: 주소 필드는 객체로 지정됩니다.
* `street`: 주소 필드의 스트리트 필드는 문자열로 지정됩니다.
* `city`: 주소 필드의 시 필드는 문자열로 지정됩니다.
* `state`: 주소 필드의 주 필드는 문자열로 지정됩니다.
* `zip`: 주소 필드의 우편번호 필드는 문자열로 지정됩니다.
* `getResponse()->getStatusCode()`: 결과의 HTTP 상태 코드입니다.
* `getResponse()->getBody()`: 결과의 바디입니다.

# 문서 추가 후 commit 예제


아래 예제에서는 문서를 추가한 후 commit을 호출하는 방법을 설명합니다.

* `commit()`: 문서를 추가한 후 commit을 호출하여 문서를 저장합니다.

# 예제 4: 필드 지정과 결과 확인 및 문서 추가 후 commit


아래 예제에서는 필드를 지정하여 문서를 추가하고 결과를 확인하고 문서를 추가한 후 commit을 호출하는 방법을 설명합니다.

#hostingforum.kr
php

// SolrClient 인스턴스 생성

$client = new SolrClient(array(

    'host' => 'localhost',

    'port' => 8983,

    'path' => '/solr',

));



// 문서를 추가할 필드 지정

$document = array(

    'id' => '4',

    'name' => 'Jane Doe',

    'age' => 25,

    'address' => array(

        'street' => '456 Elm St',

        'city' => 'Othertown',

        'state' => 'NY',

        'zip' => '67890',

    ),

);



// 문서 추가

$result = $client->addDocument($document);



// 결과 확인

if ($result->getResponse()->getStatusCode() == 200) {

    echo "문서가 성공적으로 추가되었습니다.";

} else {

    echo "문서 추가에 실패했습니다.";

}



// 문서 추가 후 commit

$client->commit();



// 결과 확인

if ($result->getResponse()->getStatusCode() == 200) {

    echo "문서가 성공적으로 저장되었습니다.";

} else {

    echo "문서 저장에 실패했습니다.";

}



# 필드 지정과 결과 확인 및 문서 추가 후 commit 예제


아래 예제에서는 필드를 지정하여 문서를 추가하고 결과를 확인하고 문서를 추가한 후 commit을 호출하는 방법을 설명합니다.

* `address`: 주소 필드는 객체로 지정됩니다.
* `street`: 주소 필드의 스트리트 필드는 문자열로 지정됩니다.
* `city`: 주소 필드의 시 필드는 문자열로 지정됩니다.
* `state`: 주소 필드의 주 필드는 문자열로 지정됩니다.
* `zip`: 주소 필드의 우편번호 필드는 문자열로 지정됩니다.
* `getResponse()->getStatusCode()`: 결과의 HTTP 상태 코드입니다.
* `getResponse()->getBody()`: 결과의 바디입니다.
* `commit()`: 문서를 추가한 후 commit을 호출하여 문서를 저장합니다.

이 문서에서는 PHP에서 SolrClient::addDocument 메서드를 사용하여 문서를 추가하는 방법을 설명했습니다. 필드를 지정하여 문서를 추가하고 결과를 확인하고 문서를 추가한 후 commit을 호출하는 방법을 설명했습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 239 페이지

검색

게시물 검색