本文整理匯總了PHP中Doctrine_Table::searchLuceneWithScores方法的典型用法代碼示例。如果您正苦於以下問題:PHP Doctrine_Table::searchLuceneWithScores方法的具體用法?PHP Doctrine_Table::searchLuceneWithScores怎麽用?PHP Doctrine_Table::searchLuceneWithScores使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Doctrine_Table
的用法示例。
在下文中一共展示了Doctrine_Table::searchLuceneWithScores方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: addSearchQueryWithScores
public static function addSearchQueryWithScores(Doctrine_Table $table, Doctrine_Query $q = null, $luceneQuery, $culture, &$scores)
{
$name = $table->getOption('name');
if (is_null($q)) {
$q = Doctrine_Query::create()->from($name);
}
$scores = $table->searchLuceneWithScores($luceneQuery, $culture);
$results = array_keys($scores);
if (count($results)) {
$alias = $q->getRootAlias();
// Contrary to Jobeet the above is NOT enough, the results will
// not be in Lucene result order. Use aDoctrine::orderByList to fix
// that up in a portable way with a SQL92-compatible CASE statement.
// Call addSelect so that we don't trash existing queries.
$q->addSelect($alias . '.*');
aDoctrine::orderByList($q, $results);
$q->whereIn($alias . '.id', $results);
$q->orderBy('field');
} else {
// Don't just let everything through when there are no hits!
// Don't use just 'false', that is not guaranteed to be cross-database compatible.
$q->andWhere('0 = 1');
}
return $q;
}