(PHP 4 >= 4.0.5, PHP 5 <= 5.0.5, PECL mnogosearch >= 1.0.0)
udm_add_search_limit — 種々の検索の制約を設定する
$agent
, int $var
, string $val
)udm_add_search_limit() は、検索の制約を追加します。
agent
udm_alloc_agent() から返された、エージェントへのリンク。
var
パラメータを定義し、制限を示します。
var
には以下の値が設定できます。
UDM_LIMIT_URL
-
データベースのサブセクションにおける検索を制限するためにドキュメント
URL に制限を課します。この機能は、SQL の %
および _ LIKE ワイルドカードをサポートします。ただし、% は
(ゼロを含む) 任意の数の文字の並びで、 _ は 1 文字だけにマッチします。
例えば、http://www.example.__/catalog は
http://www.example.com/catalog および http://www.example.net/catalog
を表すことが可能です。
UDM_LIMIT_TAG
-
サイト TAG 制約を定義します。indexer-conf において特定の
TAG を様々なサイトやあるサイトの一部に割り付けることが可能です。
mnoGoSearch 3.1.x のタグは複数行とすることが可能で、メタ記号 %
および _ を含むことが可能です。メタ記号は、
タグ集合により中からの検索が可能となります。
例えば、ABCDおよびABCEを有するリンクがあり、
検索の制約がABC_であるとすると、この検索は両方のタグについて行われます。
UDM_LIMIT_LANG
- ドキュメントの言語に関する制限を定義します。
UDM_LIMIT_CAT
-
ドキュメントのカテゴリに関する制限を定義します。
カテゴリはタグ機能に似ていますが、ネストすることが可能です。
このため、あるカテゴリの中に他のカテゴリを有するといったことが可能です。
各レベルについて 2 つの文字を使用する必要があります。0-F
の 16 進数または 0-Z の 36 進数を使用してください。この場合、'Auto'
のような最上位のカテゴリは 01 になります。このカテゴリが 'Ford'
のようなサブカテゴリを有している場合、トップカテゴリが 01(親カテゴリ)、
'Ford' が 01 となります。この結果をまとめると 0101 となります。'
Auto' が 'VW' という名前の他のサブカテゴリを有している場合、
'Ford' カテゴリに属しているためにその ID は 01 になるかもしれませんが、
通常は次のカテゴリであるために 02 になります。このため、その
ID は 0102 となるでしょう。VW が 'Engine' という名前のサブカテゴリを
有している場合には、その ID は再び 01 になり、'VW' が ID02
を有しており、'Auto' の ID が 01 であるので、まとめると、010201
となります。このカテゴリに関してサイトの検索を行う場合には、URL に
cat=010201 を指定します。
UDM_LIMIT_DATE
- ドキュメントの更新時刻についての制限を定義します。
パラメータの書式は、最初に < あるいは > があり、その後に空白を置かずに unixtime 形式の日付を続けます。例えば以下のようになります。
<?php
udm_add_search_limit($udm, UDM_LIMIT_DATE, "<908012006");
?>
> 文字が使用された場合、更新時刻がその日付以降のドキュメントのみが検索対象となります。 < の場合はそれ以前となります。
val
現在のパラメータの値を定義します。
成功した場合に TRUE
を、失敗した場合に FALSE
を返します。