Sphinx 通过 PHP API 在结果中获取单词

Sphinx Get Word in Result through PHP API

SphinxPHPAPIreturns一个"matches"数组执行后"Query();"。它还 returns 一个 "Words" 数组。我想知道的是,是否有一种方法可以让 "matches" 数组中的每个匹配项显示用于给出该结果的单词的权重。

例如,我的查询是... "Green Banana | Yellow Banana"

结果看起来像这样。

[18403206462384766539] => Array
            (
                [weight] => 4553
                [attrs] => Array
                    (
                    )

            )

我希望看到的是更像的东西。

[18403206462384766539] => Array
            (
                [weight] => 4553
                [attrs] => Array
                    (
                    )
                [word] => "Green Banana"
            )

我想避免必须进行两个单独的查询,然后必须比较两个结果数组的权重以找到最高的一个,因为我计划进行包含数百或数千个 OR 短语的查询。

不是真的。但是有 PACKEDFACTORS() - 这可能会给你一些有用的信息。

它是一个函数,因此可以在 `SetSelect 调用中使用。