YAZ is available at http://www.indexdata.dk/yaz/. You can find news information, example scripts, etc. for this extension at http://www.indexdata.dk/phpyaz/.
Замечание: This extension has been moved to the PECL repository and is no longer bundled with
PHP as of PHP 5.0.0.
- Compile YAZ (ANSI/NISO Z39.50 support) and install it. Build PHP with your favourite modules and add option --with-yaz[=DIR]. Your task is roughly the following:
| 
 Пример 1. YAZ compilation
 
gunzip -c php-4.3.X.tar.gz|tar xf -
gunzip -c yaz-2.0.tar.gz|tar xf -
 cd yaz-2.0
 ./configure --prefix=/usr
 make
 make install
 cd ../php-4.3.X.
 ./configure --with-yaz=/usr/bin
 make
 make install
  
 |   
 | 
- If you are using YAZ as a shared extension, add (or uncomment) the following line in php.ini on Unix:
And for Windows:
- On Windows, php_yaz.dll depend on yaz.dll. You'll find yaz.dll in sub directory dlls in the Win32 zip archive. Copy yaz.dll to a directory in your PATH environment (c:\winnt\system32 or c:\windows\system32).
| Внимание
 | 
| Расширение IMAP не может использоваться вместе с расширениями
 перекодировки или YAZ. Это связано с тем фактом, что они оба
 используют 1 и тот же внутренний символ.
  | 
Замечание: The above problem is solved in version 2.0 of YAZ.
-Поведение этих функций зависит от установок в php.ini.
Таблица 1. YAZ configuration options
| Name | Default | Changeable | Changelog
 | 
|---|
| yaz.max_links | "100" | PHP_INI_ALL | Available since PHP4.3.0.
 | 
| yaz.log_file | NULL | PHP_INI_ALL | Available since PHP4.3.0.
 | 
Для подробного описания констант
PHP_INI_*, обратитесь к документации функции ini_set().
Данное расширение не определяет никакие типы ресурсов.
Данное расширение не определяет никакие константы.
- PHP/YAZ keeps track of connections with targets (Z-Associations). A resource represents a connection to a target.
- The script below demonstrates the parallel searching feature of the API. When invoked with no arguments it prints a query form; else (arguments are supplied) it searches the targets as given in array host.
| 
 Пример 2. Parallel searching using Yaz
 
<?
 $host=$_REQUEST[host];
 $query=$_REQUEST[query];
 $num_hosts = count($host);
 if (empty($query) || count($host) == 0) {
 echo '<form method="get">
 <input type="checkbox"
 name="host[]" value="bagel.indexdata.dk/gils" />
 GILS test
 <input type="checkbox"
 name="host[]" value="localhost:9999/Default" />
 local test
 <input type="checkbox" checked="checked"
 name="host[]" value="z3950.loc.gov:7090/voyager" />
 Library of Congress
 <br />
 RPN Query:
 <input type="text" size="30" name="query" />
 <input type="submit" name="action" value="Search" />
 </form>
 ';
 }else{
 echo 'You searched for ' . htmlspecialchars($query) . '<br />';
 for ($i = 0; $i < $num_hosts; $i++) {
 $id[] = yaz_connect($host[$i]);
 yaz_syntax($id[$i], "usmarc");
 yaz_range($id[$i], 1, 10);
 yaz_search($id[$i], "rpn", $query);
 }
 yaz_wait();
 for ($i = 0; $i < $num_hosts; $i++) {
 echo '<hr />' . $host[$i] . ':';
 $error = yaz_error($id[$i]);
 if (!empty($error)) {
 echo "Error: $error";
 }else{
 $hits = yaz_hits($id[$i]);
 echo "Result Count $hits";
 }
 echo '<dl>';
 for ($p = 1; $p <= 10; $p++) {
 $rec = yaz_record($id[$i], $p, "string");
 if (empty($rec)) continue;
 echo "<dt><b>$p</b></dt><dd>";
 echo nl2br($rec);
 echo "</dd>";
 }
 echo '</dl>';
 }}
 ?>
 
 |   
 | 
Содержание
yaz_addinfo -- Returns additional error information
yaz_ccl_conf -- Configure CCL parser
yaz_ccl_parse -- Invoke CCL Parser
yaz_close -- Close YAZ connection
yaz_connect -- Prepares for a connection to a Z39.50 server
yaz_database -- Specifies the databases within a session
yaz_element -- Specifies Element-Set Name for retrieval
yaz_errno -- Returns error number
yaz_error -- Returns error description
yaz_es_result -- Inspects Extended Services Result
yaz_get_option -- Returns value of option for connection
yaz_hits -- Returns number of hits for last search
yaz_itemorder -- Prepares for Z39.50 Item Order with an ILL-Request package
yaz_present -- Prepares for retrieval (Z39.50 present)
yaz_range -- Specifies a range of records to retrieve
yaz_record -- Returns a record
yaz_scan_result -- Returns Scan Response result
yaz_scan -- Prepares for a scan
yaz_schema -- Specifies schema for retrieval
yaz_search -- Prepares for a search
yaz_set_option -- Sets one or more options for connection
yaz_sort -- Sets sorting criteria
yaz_syntax -- Specifies the preferred record syntax for retrieval
yaz_wait -- Wait for Z39.50 requests to complete
Пред.
Начало
След.
xslt_setopt
Уровень выше
yaz_addinfo
22222