【问题标题】:Sphinx search returns false in laravel狮身人面像搜索在 laravel 中返​​回 false
【发布时间】:2014-07-17 06:40:53
【问题描述】:

我已经使用 composer 在 laravel 中安装了 Sphinx Search 并为其生成了配置文件

配置

return array (
    'host'    => '127.0.0.1',
    'port'    => 9312,
    'indexes' => array (
        'my_book_index' => array ( 'table' => 'books', 'column' => 'book_id', 'modelname' => 'Books'  ),
    )
);

当我尝试从我的控制器查询时,我得到的结果是错误的

在控制器中查询

$results = SphinxSearch::search('t','my_book_index')->get();

dd($results);

结果

bool(false) 

是否需要任何额外的配置或为什么结果总是为空

【问题讨论】:

    标签: php laravel-4 eloquent sphinx


    【解决方案1】:

    你必须把搜索泪水> min_word_len。您可以在 sphinx 服务器配置文件 sphinx.conf 中找到 min_word_len。只需尝试使用更多字符。

    将匹配模式设置为扩展。

    SphinxSearch::search('t','my_book_index')
                  ->setMatchMode(\Sphinx\SphinxClient::SPH_MATCH_EXTENDED)
                  ->get();
    

    【讨论】:

      【解决方案2】:

      首先确保您的服务器上运行了 SphinxSearch。 Scalia's sphinxsearch package 仅用于访问 Laravel 内部的 Sphinx。

      我建议您查看解释how to set up Sphinx.的页面

      【讨论】: