関数・クラス解説

yaz_search

version:PHP 4 >= 4.0.1, PECL yaz >= 0.9. (公式)

検索を準備する

公式リファレンス

書式

yaz_search ( resource $id , string $type , string $query ) : bool

説明

yaz_search() は、指定した接続で検索を行う準備をします。

yaz_connect() と同様にこの関数は非ブロックモードで 動作し、後で yaz_wait() がコールされたときのために 検索の準備をするだけです。

パラメータ

id
yaz_connect() が返す接続リソース。
type
クエリの型を表します。現在は "rpn" のみがサポート されており、この場合 3 番目の引数には Type-1 クエリを前置表記で 指定します。
query
RPN クエリは、Z39.50 規格により定義された Type-1 クエリのテキスト 表現です。しかし、YAZ により使用されるテキスト表現では、演算子が オペランドの前にある前置表記が使用されます。クエリ文字列はトークンの 並びであり、このトークンでは 2 重引用符で括られない限り空白文字は 無視されます。アットマーク(@)で始まるトークンは 演算子とみなされ、そうでない場合は検索項目として処理されます。
RPN 演算子
構文 説明
@and query1 query2 query1 および query2 の積集合
@or query1 query2 query1 および query2 の和集合
@not query1 query2 query1 であり、query2 でない
@set name 結果セットへのリファレンス
@attrset set query クエリの属性セットを指定します。この構造が使用できるのは 全てのクエリの始めに一回だけです。
@attr [set] type=value query クエリに属性を適用します。型と値は属性型と属性値をそれぞれ指定する 整数です。この組みが指定された場合、属性の組を指定します。
属性についての情報は » Z39.50 Maintenance Agency サイトにあります。
注意: もう少しわかりやすい記法を利用したい場合は、CCL パーサ関数 - yaz_ccl_conf() および yaz_ccl_parse() を使用してください。

返値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

サンプル

例1 クエリの例

単純な検索は以下のように行います。

computer は、"computer" を含む文書にマッチします。属性は指定されていません。

クエリ

"knuth donald" は、"knuth donald" を含む文書にマッチします(サーバーが複数の単語による 検索をサポートしている場合)。

このクエリは、同じフレーズに対して 2 つの属性を適用しています。

@attr 1=1003 @attr 4=1 "knuth donald" 最初の属性は type 1 (Bib-1 use) で、その値は 1003 (Author) です。 2 番目の属性は type 4 (structure) で、その値は 1 (phrase) です。つまりこれは、Donald Knuth が著者である文書にマッチする ことになります。

クエリ

@and @or a b @not @or c d e は、次のような意味になります。(a or b) and ((c or d) not e)

さらに複雑な例です。

@attrset gils @and @attr 1=4 art @attr 1=2000 company このクエリは GILS 属性セットをすべて使用しています。このクエリは 表題(Title)に art が含まれ(GILS,BIB-1)、 配布者(Distributor)に company が含まれる(GILS) 文書にマッチします。

ワード検索


※入力キーワードが、関数名・説明文・タグに含まれるものを検索

関数名アルファベット別

A B C D E F G H I J
K L M N O P Q R S T
U V W X Y Z _

最終更新一覧

stristr
 大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

stripslashes
 バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

stripos
 大文字小文字を区別せずに文字列が最初に現れる位置を取得する

stripcslashes
 addcslashes() でクォートされた文字列をアンクォートする

strip_tags
 文字列から HTML と PHP のタグを除去して返却

strcspn
 指定した文字が最初に現れる位置を調べる

strcoll
 ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

strcmp
 2つの文字列を比較し同じか(あるいは大小)を判定する

strchr
 strstr() のエイリアス

strcasecmp
 2つの文字列を比較(大文字小文字を区別せず同じとみなす)

カテゴリー一覧

PHP の振る舞いの変更
音声フォーマットの操作
認証サービス
コマンドライン関連
圧縮およびアーカイブ
暗号
データベース関連
日付および時刻関連
ファイルシステム
自然言語および文字エンコーディング
画像処理および作成
メール関連
数学
テキスト以外の MIME 型
プロセス制御
その他の基本モジュール
その他のサービス
検索エンジン用の拡張モジュール
サーバー固有のモジュール
セッション関連
テキスト処理
変数・データ型関連
ウェブサービス
Windows 用のモジュール
XML 操作
GUI用の拡張モジュール