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.
Multisearcher allows to search through several independent indexes.
callback $_documentDistributorCallBack = 'null'Callback used to choose target index for new documents
Function/method signature: Zend_Search_Lucene_Interface callbackFunction(Zend_Search_Lucene_Document $document, array $indices);
null means "default documents distributing algorithm"
Detailsarray $_indices = ''List of indices for searching.
Array of Zend_Search_Lucene_Interface objects
DetailsZend_Search_Lucene_TermStreamsPriorityQueue $_termsStream = 'null'Terms stream priority queue object
Details__construct(
array $indices
=
array
)
:
Object constructor.
DetailsaddDocument(
Zend_Search_Lucene_Document $document
)
:
Adds a document to this index.
DetailsaddIndex(
Zend_Search_Lucene_Interface $index
)
:
Add index for searching.
DetailsaddReference(
)
:
Add reference to the index object
DetailscloseTermsStream(
)
:
Close terms stream
Should be used for resources clean up if stream is not read up to the end
Detailscommit(
)
:
Commit changes resulting from delete() or undeleteAll() operations.
Detailscount(
)
:
integerReturns the total number of documents in this index (including deleted documents).
DetailscurrentTerm(
)
:
Zend_Search_Lucene_Index_Term|nullReturns term in current position
Detailsdelete(
integer|Zend_Search_Lucene_Search_QueryHit $id
)
:
Deletes a document from the index.
$id is an internal document id
DetailsdocFreq(
Zend_Search_Lucene_Index_Term $term
)
:
integerReturns the number of documents in this index containing the $term.
Detailsfind(
mixed $query
)
:
arrayPerforms a query against the index and returns an array of Zend_Search_Lucene_Search_QueryHit objects.
Input is a string or Zend_Search_Lucene_Search_Query.
DetailsgetActualGeneration(
Zend_Search_Lucene_Storage_Directory $directory
)
:
integerGet current generation number
Returns generation number 0 means pre-2.1 index format -1 means there are no segments files.
DetailsgetDefaultSearchField(
)
:
stringGet default search field.
Null means, that search is performed through all fields by default
DetailsgetDirectory(
)
:
Zend_Search_Lucene_Storage_DirectoryReturns the Zend_Search_Lucene_Storage_Directory instance for this index.
DetailsgetDocument(
integer|Zend_Search_Lucene_Search_QueryHit $id
)
:
Zend_Search_Lucene_DocumentReturns a Zend_Search_Lucene_Document object for the document number $id in this index.
DetailsgetDocumentDistributorCallback(
)
:
callbackGet callback for choosing target index.
DetailsgetFieldNames(
boolean $indexed
=
false
)
:
arrayReturns a list of all unique field names that exist in this index.
DetailsgetFormatVersion(
)
:
integerGet index format version
DetailsgetMaxBufferedDocs(
)
:
integerRetrieve index maxBufferedDocs option
maxBufferedDocs is a minimal number of documents required before the buffered in-memory documents are written into a new Segment
Default value is 10
DetailsgetMaxMergeDocs(
)
:
integerRetrieve index maxMergeDocs option
maxMergeDocs is a largest number of documents ever merged by addDocument(). Small values (e.g., less than 10,000) are best for interactive indexing, as this limits the length of pauses while indexing to a few seconds. Larger values are best for batched indexing and speedier searches.
Default value is PHP_INT_MAX
DetailsgetMergeFactor(
)
:
integerRetrieve index mergeFactor option
mergeFactor determines how often segment indices are merged by addDocument(). With smaller values, less RAM is used while indexing, and searches on unoptimized indices are faster, but indexing speed is slower. With larger values, more RAM is used during indexing, and while searches on unoptimized indices are slower, indexing is faster. Thus larger values (> 10) are best for batch index creation, and smaller values (< 10) for indices that are interactively maintained.
Default value is 10
DetailsgetResultSetLimit(
)
:
integerSet result set limit.
0 means no limit
DetailsgetSegmentFileName(
integer $generation
)
:
stringGet segments file name
DetailsgetSimilarity(
)
:
Zend_Search_Lucene_Search_SimilarityRetrive similarity used by index reader
DetailshasDeletions(
)
:
booleanReturns true if any documents have been deleted from this index.
DetailshasTerm(
Zend_Search_Lucene_Index_Term $term
)
:
booleanReturns true if index contain documents with specified term.
Is used for query optimization.
DetailsisDeleted(
integer $id
)
:
booleanChecks, that document is deleted
DetailsmaxDoc(
)
:
integerReturns one greater than the largest possible document number.
This may be used to, e.g., determine how big to allocate a structure which will have an element for every document number in an index.
DetailsnextTerm(
)
:
Zend_Search_Lucene_Index_Term|nullScans terms dictionary and returns next term
Detailsnorm(
integer $id, string $fieldName
)
:
floatReturns a normalization factor for "field, document" pair.
DetailsnumDocs(
)
:
integerReturns the total number of non-deleted documents in this index.
Detailsoptimize(
)
:
Optimize index.
Merges all segments into one
DetailsremoveReference(
)
:
Remove reference from the index object
When reference count becomes zero, index is closed and resources are cleaned up
DetailsresetTermsStream(
)
:
Reset terms stream.
DetailssetDefaultSearchField(
string $fieldName
)
:
Set default search field.
Null means, that search is performed through all fields by default
Default value is null
DetailssetDocumentDistributorCallback(
callback $callback
)
:
Set callback for choosing target index.
DetailssetFormatVersion(
int $formatVersion
)
:
Set index format version.
Index is converted to this format at the nearest upfdate time
DetailssetMaxBufferedDocs(
integer $maxBufferedDocs
)
:
Set index maxBufferedDocs option
maxBufferedDocs is a minimal number of documents required before the buffered in-memory documents are written into a new Segment
Default value is 10
DetailssetMaxMergeDocs(
integer $maxMergeDocs
)
:
Set index maxMergeDocs option
maxMergeDocs is a largest number of documents ever merged by addDocument(). Small values (e.g., less than 10,000) are best for interactive indexing, as this limits the length of pauses while indexing to a few seconds. Larger values are best for batched indexing and speedier searches.
Default value is PHP_INT_MAX
DetailssetMergeFactor(
$mergeFactor
)
:
Set index mergeFactor option
mergeFactor determines how often segment indices are merged by addDocument(). With smaller values, less RAM is used while indexing, and searches on unoptimized indices are faster, but indexing speed is slower. With larger values, more RAM is used during indexing, and while searches on unoptimized indices are slower, indexing is faster. Thus larger values (> 10) are best for batch index creation, and smaller values (< 10) for indices that are interactively maintained.
Default value is 10
DetailssetResultSetLimit(
integer $limit
)
:
Set result set limit.
0 (default) means no limit
DetailsskipTo(
Zend_Search_Lucene_Index_Term $prefix
)
:
Skip terms stream up to specified term preffix.
Prefix contains fully specified field info and portion of searched term
DetailstermDocs(
Zend_Search_Lucene_Index_Term $term, Zend_Search_Lucene_Index_DocsFilter|null $docsFilter
=
null
)
:
arrayReturns IDs of all the documents containing term.
DetailstermDocsFilter(
Zend_Search_Lucene_Index_Term $term, Zend_Search_Lucene_Index_DocsFilter|null $docsFilter
=
null
)
:
Zend_Search_Lucene_Index_DocsFilterReturns documents filter for all documents containing term.
It performs the same operation as termDocs, but return result as Zend_Search_Lucene_Index_DocsFilter object
DetailstermFreqs(
Zend_Search_Lucene_Index_Term $term, Zend_Search_Lucene_Index_DocsFilter|null $docsFilter
=
null
)
:
integerReturns an array of all term freqs.
Return array structure: array( docId => freq, ...)
DetailstermPositions(
Zend_Search_Lucene_Index_Term $term, Zend_Search_Lucene_Index_DocsFilter|null $docsFilter
=
null
)
:
arrayReturns an array of all term positions in the documents.
Return array structure: array( docId => array( pos1, pos2, ...), ...)
Detailsterms(
)
:
arrayReturns an array of all terms in this index.
DetailsundeleteAll(
)
:
Undeletes all documents currently marked as deleted in this index.
Details