Sphinx 理解狮身人面像中的SetFilter

Sphinx 理解狮身人面像中的SetFilter,sphinx,Sphinx,我正在使用Sphinx,但不完全了解SetFilter的工作原理。我现在的假设是,在Sphinx配置中,我有我的查询: SELECT ID, Kittens, Puppies FROM db_animals; 然后我加入了我想过滤的属性: sql_attr_uint = puppies 然后,当我调用Sphinx时,如果我想过滤这些属性中的一个,我会放置以下内容: $cl->SetFilter( 'puppies', array($puppyID)); 因此,如果$puppyI

我正在使用Sphinx,但不完全了解SetFilter的工作原理。我现在的假设是,在Sphinx配置中,我有我的查询:

 SELECT ID, Kittens, Puppies FROM db_animals;
然后我加入了我想过滤的属性:

 sql_attr_uint = puppies
然后,当我调用Sphinx时,如果我想过滤这些属性中的一个,我会放置以下内容:

 $cl->SetFilter( 'puppies', array($puppyID));
因此,如果$puppyID=7

Sphinx只返回puppies列设置为7的行

我的解释正确吗?这里有什么问题吗

非常感谢您的帮助


克雷格对你的第一个问题回答是。第二个答案是否定的。这个答案被故意填充,以允许Stackoverflow允许我发布它。Grr

谢谢你,巴里!!有没有一种方法可以测试它是否有效?例如,我有$cl->SetFilter('catID',array($catID));$catID设置为7,那么,我是否应该只获取catID设置为7的项目?我得到了一对将catID设置为7的对象,但还有一些具有不同值的对象。如果以上是真的,它似乎不应该这样做?听起来像是其他地方的逻辑错误。但是,如果没有系统的更多细节,就无法真正帮助您进行调试。