本文整理匯總了PHP中SearchEngine::_getFieldList方法的典型用法代碼示例。如果您正苦於以下問題:PHP SearchEngine::_getFieldList方法的具體用法?PHP SearchEngine::_getFieldList怎麽用?PHP SearchEngine::_getFieldList使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類SearchEngine
的用法示例。
在下文中一共展示了SearchEngine::_getFieldList方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: _getFieldList
/**
* Returns all field qualifiers in parsed queryString
*
* @param LuceneSyntaxParser $po_query
* @return array
*/
private static function _getFieldList($po_query)
{
$va_fields = array();
switch (get_class($po_query)) {
case 'Zend_Search_Lucene_Search_Query_Boolean':
$va_items = $po_query->getSubqueries();
break;
case 'Zend_Search_Lucene_Search_Query_MultiTerm':
$va_items = $po_query->getTerms();
break;
default:
$va_items = array();
break;
}
$vn_i = 0;
foreach ($va_items as $o_term) {
switch (get_class($o_term)) {
case 'Zend_Search_Lucene_Search_Query_Preprocessing_Term':
$va_fields[] = $o_term->getTerm()->field;
break;
case 'Zend_Search_Lucene_Search_Query_Term':
$va_fields[] = $o_term->getTerm()->field;
break;
case 'Zend_Search_Lucene_Index_Term':
$va_fields[] = $o_term->getTerm()->field;
break;
//case 'Zend_Search_Lucene_Search_Query_Wildcard':
//$va_fields = $o_term->getTerm()->field;
// break;
//case 'Zend_Search_Lucene_Search_Query_Wildcard':
//$va_fields = $o_term->getTerm()->field;
// break;
case 'Zend_Search_Lucene_Search_Query_Phrase':
$va_phrase_items = $o_term->getTerms();
foreach ($va_phrase_items as $o_term) {
$va_fields[] = $o_term->field;
}
break;
case 'Zend_Search_Lucene_Search_Query_MultiTerm':
$va_fields = array_merge($va_fields, SearchEngine::_getFieldList($o_term));
break;
case 'Zend_Search_Lucene_Search_Query_Boolean':
$va_fields = array_merge($va_fields, SearchEngine::_getFieldList($o_term));
break;
case 'Zend_Search_Lucene_Search_Query_Range':
$va_fields[] = $o_term->getTerm()->field;
break;
default:
// NOOP (TODO: do *something*)
break;
}
$vn_i++;
}
return $va_fields;
}