php - 将 Zend Search Lucene 与 Symfony 2 结合使用

标签 php symfony zend-search-lucene

我的网络应用程序中有一个搜索表单,用户可以按姓名、俱乐部名称等搜索其他人。 这是我用于搜索的代码,但它没有给我任何“点击”。

$search = $this->get('ewz_search.lucene');

$query = new MultiTerm();
$query->addTerm(new Term($form->getData()->getName()));
$query->addTerm(new Term($form->getData()->getClub()->getId()));

// See point 1 to see what this displays
var_dump($query);

// See point 2 to see what this displays
die("debug: " . $query);

// If I use this instead of the MultiTerm, I do get a hit
// $query = 'Mathew';

$hits = $search->find($query);

第 1 点: 对象(Zend\Search\Lucene\Search\Query\MultiTerm)#644 (9) { ["_terms":"Zend\Search\Lucene\Search\Query\MultiTerm":private]=> array(2) { [0 ]=> 对象(Zend\Search\Lucene\Index\Term)#638 (2) { ["field"]=> NULL ["text"]=> string(12) "Mathew"} [1]=> 对象(Zend\Search\Lucene\Index\Term)#637 (2) { ["field"]=> NULL ["text"]=> int(1) } } ["_signs":"Zend\Search\Lucene\Search\Query\MultiTerm":private]=> array(2) { [0]=> NULL [1]=> NULL } ["_resVector":"Zend\Search\Lucene\Search\Query\MultiTerm":private] => NULL ["_termsFreqs":"Zend\Search\Lucene\Search\Query\MultiTerm":private]=> array(0) { } ["_coord":"Zend\Search\Lucene\Search\Query\MultiTerm":private]=> NULL ["_weights":"Zend\Search\Lucene\Search\Query\MultiTerm":private]=> array(0) { } ["_boost":"Zend\Search\Lucene\Search\Query\AbstractQuery":private]=> int(1) ["_weight":protected]=> NULL ["_currentColorIndex":"Zend\Search\Lucene\Search\Query\AbstractQuery":private]=> int(0) }

第 2 点: 调试:马修 1

谢谢。

最佳答案

检查默认术语运算符。如果您的clubid和name有单独的字段索引,您可以为字段名称添加前缀。

$query = "姓名:Mathew AND 俱乐部 ID:1";

请参阅parser syntax了解更多信息。

关于php - 将 Zend Search Lucene 与 Symfony 2 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10663915/

相关文章:

php - 第二列包含数据库中的序列号

php - Zend_Search_Lucene 与 SOLR

zend-framework - Zend Lucene - 无法搜索数字

php - 如何在 CakePHP 3.x 中的 MySQL IN 子句中使用多个列?

从 MySql 到 Excel 的 PHP select 语句。将日期格式化为 YYYYMMDD

PHPUnit:模拟 Symfony2 FormBuilderInterface - 类型提示问题

带有 Spread PDF 生成器包的 CSS

php - 在php中,需要在所需文件中吗?

php - 将 JSON 代码附加到从 MySQL 和 PHP 创建的 JSON