Search/Lucene/Search/Query/Phrase.php

Show: PublicProtectedPrivateinherited
Table of Contents
Zend Framework

LICENSE

This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.

Category
Zend  
Copyright
Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  
Package
Zend_Search_Lucene  
Subpackage
Search  
Version
$Id: Phrase.php 24593 2012-01-05 20:35:02Z matthew $  

\Zend_Search_Lucene_Search_Query_Phrase

Package: Zend\Search\Lucene\Search
A Query that matches documents containing a particular sequence of terms.
Parent(s)
\Zend_Search_Lucene_Search_Query
Category
Zend  
Copyright
Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)  
License
New BSD License  

Properties

>VPropertyprivatefloat $_boost = 1
inherited
query boost factor
Inherited from: \Zend_Search_Lucene_Search_Query::$$_boost
Default value1Details
Type
float
Inherited_from
\Zend_Search_Lucene_Search_Query::$$_boost  
>VPropertyprivateinteger $_currentColorIndex = 0
inherited
Current highlight color
Inherited from: \Zend_Search_Lucene_Search_Query::$$_currentColorIndex
Default value0Details
Type
integer
Inherited_from
\Zend_Search_Lucene_Search_Query::$$_currentColorIndex  
>VPropertyprivatearray $_offsets
Term positions (relative positions of terms within the phrase).

Array of integers

Details
Type
array
>VPropertyprivatearray $_resVector = null
Result vector.
Default valuenullDetails
Type
array
>VPropertyprivateinteger $_slop
Sets the number of other words permitted between words in query phrase.

If zero, then this is an exact phrase search. For larger values this works like a WITHIN or NEAR operator.

The slop is in fact an edit-distance, where the units correspond to moves of terms in the query phrase out of position. For example, to switch the order of two words requires two moves (the first move places the words atop one another), so to permit re-orderings of phrases, the slop must be at least two. More exact matches are scored higher than sloppier matches, thus search results are sorted by exactness.

The slop is zero by default, requiring exact matches.

Details
Type
integer
>VPropertyprivatearray $_terms
Terms to find.

Array of Zend_Search_Lucene_Index_Term objects.

Details
Type
array
>VPropertyprivatearray $_termsPositions = array()
Terms positions vectors.

Array of Arrays: term1Id => (docId => array( pos1, pos2, ... ), ...) term2Id => (docId => array( pos1, pos2, ... ), ...)

Default valuearray()Details
Type
array
>VPropertyprotected\Zend_Search_Lucene_Search_Weight $_weight = null
inherited
Query weight
Inherited from: \Zend_Search_Lucene_Search_Query::$$_weight

Methods

methodpublic__construct(array $terms = null, array $offsets = null, string $field = null) : void

Class constructor.

Create a new prase query.

Parameters
NameTypeDescription
$termsarray

Terms to search Array of strings.

$offsetsarray

Relative term positions. Array of integers.

$fieldstring

Field to search.

Throws
ExceptionDescription
\Zend_Search_Lucene_Exception
methodpublic__toString() : string

Print a query

Returns
TypeDescription
string
methodpublic_exactPhraseFreq(integer $docId) : float

Score calculator for exact phrase queries (terms sequence is fixed)

Parameters
NameTypeDescription
$docIdinteger
Returns
TypeDescription
float
methodprotected_highlightMatches(\Zend_Search_Lucene_Search_Highlighter_Interface $highlighter) : void

Query specific matches highlighting

Parameters
NameTypeDescription
$highlighter\Zend_Search_Lucene_Search_Highlighter_Interface

Highlighter object (also contains doc for highlighting)

methodprotected_initWeight(\Zend_Search_Lucene_Interface $reader) : void
inherited

Constructs an initializes a Weight for a _top-level_query_.

Inherited from: \Zend_Search_Lucene_Search_Query::_initWeight()
Parameters
NameTypeDescription
$reader\Zend_Search_Lucene_Interface
methodpublic_sloppyPhraseFreq(integer $docId, \Zend_Search_Lucene_Interface $reader) : float

Score calculator for sloppy phrase queries (terms sequence is fixed)

Parameters
NameTypeDescription
$docIdinteger
$reader\Zend_Search_Lucene_Interface
Returns
TypeDescription
float
methodpublicaddTerm(\Zend_Search_Lucene_Index_Term $term, integer $position = null) : void

Adds a term to the end of the query phrase.

The relative position of the term is specified explicitly or the one immediately after the last term added.

Parameters
NameTypeDescription
$term\Zend_Search_Lucene_Index_Term
$positioninteger
methodpubliccreateWeight(\Zend_Search_Lucene_Interface $reader) : \Zend_Search_Lucene_Search_Weight

Constructs an appropriate Weight implementation for this query.

Parameters
NameTypeDescription
$reader\Zend_Search_Lucene_Interface
Returns
TypeDescription
\Zend_Search_Lucene_Search_Weight
methodpublicexecute(\Zend_Search_Lucene_Interface $reader, \Zend_Search_Lucene_Index_DocsFilter | null $docsFilter = null) : void

Execute query in context of index reader It also initializes necessary internal structures

Query specific implementation

Parameters
NameTypeDescription
$reader\Zend_Search_Lucene_Interface
$docsFilter\Zend_Search_Lucene_Index_DocsFilter | null
methodpublicgetBoost() : float
inherited

Gets the boost for this clause.

Inherited from: \Zend_Search_Lucene_Search_Query::getBoost()

Documents matching this clause will (in addition to the normal weightings) have their score multiplied by boost. The boost is 1.0 by default.

Returns
TypeDescription
float
methodpublicgetQueryTerms() : array

Return query terms

Returns
TypeDescription
array
methodpublicgetSlop() : integer

Get slop

Returns
TypeDescription
integer
methodpublicgetTerms() : array

Returns query term

Returns
TypeDescription
array
methodpublichighlightMatches(string $inputHTML, string $defaultEncoding = '', \Zend_Search_Lucene_Search_Highlighter_Interface | null $highlighter = null) : string
inherited

Highlight matches in $inputHTML

Inherited from: \Zend_Search_Lucene_Search_Query::highlightMatches()
Parameters
NameTypeDescription
$inputHTMLstring
$defaultEncodingstring

HTML encoding, is used if it's not specified using Content-type HTTP-EQUIV meta tag.

$highlighter\Zend_Search_Lucene_Search_Highlighter_Interface | null
Returns
TypeDescription
string
methodpublichtmlFragmentHighlightMatches(string $inputHtmlFragment, string $encoding = 'UTF-8', \Zend_Search_Lucene_Search_Highlighter_Interface | null $highlighter = null) : string
inherited

Highlight matches in $inputHtmlFragment and return it (without HTML header and body tag)

Inherited from: \Zend_Search_Lucene_Search_Query::htmlFragmentHighlightMatches()
Parameters
NameTypeDescription
$inputHtmlFragmentstring
$encodingstring

Input HTML string encoding

$highlighter\Zend_Search_Lucene_Search_Highlighter_Interface | null
Returns
TypeDescription
string
methodpublicmatchedDocs() : array

Get document ids likely matching the query

It's an array with document ids as keys (performance considerations)

Returns
TypeDescription
array
methodpublicoptimize(\Zend_Search_Lucene_Interface $index) : \Zend_Search_Lucene_Search_Query

Optimize query in the context of specified index

Parameters
NameTypeDescription
$index\Zend_Search_Lucene_Interface
Returns
TypeDescription
\Zend_Search_Lucene_Search_Query
methodpublicreset() : void
inherited

Reset query, so it can be reused within other queries or with other indeces

Inherited from: \Zend_Search_Lucene_Search_Query::reset()
methodpublicrewrite(\Zend_Search_Lucene_Interface $index) : \Zend_Search_Lucene_Search_Query

Re-write query into primitive queries in the context of specified index

Parameters
NameTypeDescription
$index\Zend_Search_Lucene_Interface
Returns
TypeDescription
\Zend_Search_Lucene_Search_Query
methodpublicscore(integer $docId, \Zend_Search_Lucene_Interface $reader) : float

Score specified document

Parameters
NameTypeDescription
$docIdinteger
$reader\Zend_Search_Lucene_Interface
Returns
TypeDescription
float
methodpublicsetBoost(float $boost) : void
inherited

Sets the boost for this query clause to $boost.

Inherited from: \Zend_Search_Lucene_Search_Query::setBoost()
Parameters
NameTypeDescription
$boostfloat
methodpublicsetSlop(integer $slop) : void

Set slop

Parameters
NameTypeDescription
$slopinteger
methodpublicsetWeight(integer $num, \Zend_Search_Lucene_Search_Weight_Term $weight) : void

Set weight for specified term

Parameters
NameTypeDescription
$numinteger
$weight\Zend_Search_Lucene_Search_Weight_Term
Documentation was generated by phpDocumentor 2.0.0a12.