라이브러리
[PHP] yaz_wait - Z39.50 요청이 완료될 때까지 기다립니다.
PHP에서 yaz_wait() 함수
`yaz_wait()` 함수는 PHP의 Net::YAZ 확장 모듈에서 사용하는 함수로, Z39.50 서비스에 대한 요청을 기다리는 함수입니다. 이 함수는 Z39.50 서비스에 대한 요청을 전송하고, 응답을 기다리는 동안 블록킹되며, 응답이 도착하면 함수가 반환됩니다.
사용법
`yaz_wait()` 함수는 다음과 같은 형식으로 사용할 수 있습니다.
#hostingforum.kr
php
yaz_wait($handle, $timeout)
- `$handle`: Z39.50 서비스에 대한 요청을 전송한 핸들입니다.
- `$timeout`: 응답을 기다리는 시간(초)입니다. 0을 지정하면 무한 대기합니다.
예제
다음 예제는 Z39.50 서비스에 대한 요청을 전송하고, 응답을 기다리는 예제입니다.
#hostingforum.kr
php
// Z39.50 서비스에 대한 요청을 전송하는 코드
$handle = yaz_init('example.com', 210, 'example', 'password');
// Z39.50 서비스에 대한 요청을 전송
$command = new yazCommand('searchRetrieve', 'example');
$command->setOption('query', 'example');
$command->send();
// 응답을 기다리는 코드
yaz_wait($handle, 10);
// 응답을 처리하는 코드
$response = yaz_getResponse($handle);
echo "응답 코드: " . $response->getCode() . "
";
echo "응답 메시지: " . $response->getMessage() . "
";
주의
- `yaz_wait()` 함수는 블록킹 함수이므로, 응답이 도착하기까지 프로그램이 멈추게 됩니다.
- `$timeout` 매개변수를 0으로 지정하면 무한 대기를 수행하므로, 프로그램이 멈추게 됩니다.
- Z39.50 서비스에 대한 요청을 전송한 핸들 `$handle`을 지정하지 않으면, 오류가 발생합니다.
참고
- Net::YAZ 확장 모듈은 PHP 7.2 이상에서 사용할 수 있습니다.
- Z39.50 서비스에 대한 요청을 전송하는 코드는 예제 코드에서 제공하는 코드를 참고하시기 바랍니다.
댓글목록
등록된 댓글이 없습니다.