Sphinx SPH_MATCH_ALL、SPH_MATCH_PHRASE、SPH_MATCH_BOOLEAN、SPH_MATCH_ALL 和 SPH_MATCH_EXTENDED2?

发布于 2024-11-02 16:36:03 字数 797 浏览 6 评论 0原文

我是狮身人面像搜索的新手。如何在 PHP 中使用这种匹配模式?

示例:

   SPH_MATCH_ALL,SPH_MATCH_PHRASE,SPH_MATCH_BOOLEAN,SPH_MATCH_ALL and SPH_MATCH_EXTENDED2?

   <?php
 include('sphinxapi.php');
        $cl = new SphinxClient();
        $cl->SetServer('localhost',9312);
            $cl->SetMatchMode(SPH_MATCH_ANY);
        //$cl->SetMatchMode(SPH_MATCH_EXTENDED2);
        //$cl->SetMatchMode(SPH_MATCH_ALL);
        //$cl->SetMatchMode(SPH_MATCH_PHRASE);
        $cl->SetArrayResult(true);
        $cl->SetLimits(0, 100); 
        $result = $cl->Query("&name Bormis","abc_index");

        echo "<pre>";
        print_r($result);
        exit;
     ?>

在此代码中,仅适用于 SPH_MATCH_ANY。

但是,我需要搜索存在单词匹配。

并且如何在本示例中使用所有 Matchind 模式?

I am new to Sphinx Search. How to use this Matching modes in PHP?

Example:

   SPH_MATCH_ALL,SPH_MATCH_PHRASE,SPH_MATCH_BOOLEAN,SPH_MATCH_ALL and SPH_MATCH_EXTENDED2?

   <?php
 include('sphinxapi.php');
        $cl = new SphinxClient();
        $cl->SetServer('localhost',9312);
            $cl->SetMatchMode(SPH_MATCH_ANY);
        //$cl->SetMatchMode(SPH_MATCH_EXTENDED2);
        //$cl->SetMatchMode(SPH_MATCH_ALL);
        //$cl->SetMatchMode(SPH_MATCH_PHRASE);
        $cl->SetArrayResult(true);
        $cl->SetLimits(0, 100); 
        $result = $cl->Query("&name Bormis","abc_index");

        echo "<pre>";
        print_r($result);
        exit;
     ?>

In this code here working only SPH_MATCH_ANY.

But, I need with search exist word match.and

How to use all the Matchind modes in this example?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

眼前雾蒙蒙 2024-11-09 16:36:03

首先选择您匹配模式,它们都有不同的工作方式。根据您的应用程序,您将做出选择。

Sphinx 使用一些查询运算符,例如 &(和)、|(或)等。因此,如果您发送类似 "&name Bormis"< /code>,sphinx 可能无法理解。

尝试仅使用“Bormis”作为查询,也可以看到匹配模式之间的差异。如果您愿意,也可以在命令行中进行搜索 测试您的配置是否正确。

祝你好运!

first choose you matching mode, they all work in different ways. Depending on your application, you'll make your choice.

Sphinx uses some query operators like & (and), | (or), etc. so if you send a query like "&name Bormis", sphinx might not understand it.

Try using only "Bormis" as a query too see the difference between the matching modes. If you prefer it, you could also do the search in the command line to test if your configuration is correct.

Good Luck!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文