|
Последние активные темы форума |
|
yaz_scan
(PHP 4 >= 4.0.5, PHP 5) yaz_scan -- Prepares for a scan
Descriptionint yaz_scan ( resource id, string type, string startterm [, array flags] ) This function prepares for a Z39.50 Scan Request, where parameter
id specifies connection. Starting term
point for the scan is given by startterm.
The form in which the starting term is specified is given by parameter
type. Currently only type rpn
is supported. The optional parameter flags
specifies additional information to control the behaviour of the
scan request. Three indexes are currently read from the flags:
number (number of terms requested),
position (preferred position of term) and
stepSize (preferred step size).
To actually transfer the Scan Request to the server and receive the
Scan Response, yaz_wait() must be called. Upon
completion of yaz_wait() call
yaz_error() and yaz_scan_result() to
handle the response.
The syntax of startterm is similar to the
RPN query as described in yaz_search(). The
startterm consists of zero or more @attr-operator
specifications, then followed by exactly one token.
Пример 1. PHP function that scans titles
<?php
function
scan_titles
(
$id
,
$startterm
)
{
yaz_scan
(
$id
,
"rpn"
,
"@attr 1=4 "
.
$startterm
);
yaz_wait
();
$errno
=
yaz_errno
(
$id
);
if (
$errno
==
0
) {
$ar
=
yaz_scan_result
(
$id
, &
$options
);
echo
'Scan ok; '
;
while (list(
$key
,
$val
) =
each
(
$options
)) {
echo
"$key = $val "
;
}
echo
'<br /><table>'
;
while (list(
$key
, list(
$k
,
$term
,
$tcount
)) =
each
(
$ar
)) {
if (empty(
$k
)) continue;
echo
"<tr><td>$term</td><td>$tcount</td></tr>"
;
}
echo
'</table>'
;
} else {
echo
"Scan failed. Error: "
.
yaz_error
(
$id
) .
"<br />"
;
}
}
?>
|
|
|