The yaz() functions wrap the YAZ API. The home page of the project is http://www.indexdata.dk/yaz/. Information about the phpyaz module can be found at http://www.indexdata.dk/phpyaz/.
PHP/YAZ is much simpler to use than the C API for YAZ but less flexible. The intent is to make it easy to build basic client functions. It supports persistent stateless connections very similar to those offered by the various SQL APIs that are available for PHP. This means that sessions are stateless but shared amongst users, thus saving the connect and INIT steps in many cases.
Before compiling PHP with the PHP/YAZ module you'll need the YAZ toolkit. Build YAZ and install it. Build PHP with your favourite modules and add option --with-yaz. Your task is roughly the following:
gunzip -c yaz-1.6.tar.gz|tar xf - gunzip -c php-4.0.X.tar.gz|tar xf - cd yaz-1.6 ./configure --prefix=/usr make make install cd ../php-4.0.X ./configure --with-yaz=/usr/bin make make install |
PHP/YAZ keeps track of connections with targets (Z-Associations). A positive integer represents the ID of a particular association.
The script below demonstrates the parallel searching feature of the API. When invoked it either prints a query form (if no arguments are supplied) or if there are arguments (term and one or more hosts) it searches the targets in array host.