라이브러리
[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을 호출하는 방법을 설명했습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.