用 PHP构建自定义搜索引擎(8)_PHP应用_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

用 PHP构建自定义搜索引擎(8)

作者:黑客防线网安PHP维护基地 来源:黑客防线网安PHP维护基地 浏览次数:0

黑客防线网安网讯:  要测试代码,需要为 Sphinx 创建 log 目录,启动 searchd,然后运行 PHP 应用程序,如下所示:  清单 13. PHP 应用程序$ sudo mkdir -p /var/log/searchd$ sudo /usr/local/bin/searc...

  要测试代码需要为 Sphinx 创建 log 目录启动 searchd,然后运行 PHP 应用程序,如下所示:

  清单 13. PHP 应用程序

$ sudo mkdir -p /var/log/searchd
$ sudo /usr/local/bin/searchd --config /usr/local/etc/sphinx.conf
$ php search.php
9
Array (
[fields] => Array (
 [0] => partno
 [1] => description
)

[attrs] => Array(
 [assembly] => 1
 [model] => 1
)

[matches] => Array(
 [9] => Array(
  [weight] => 1
  [attrs] => Array(
   [assembly] => 5
   [model] => 3
  )
 )
)

[total] => 1
[total_found] => 1
[time] => 0.000
[words] => Array(
 [cylind] => Array(
  [docs] => 2
  [hits] => 2
 )
)
)

  输出为 9:匹配的单行的正确主键如果 Sphinx 找到匹配,相关数组 $result 将包含名为 results 的元素浏览 print_r() 的输出以查看返回的其他内容。

  注意事项:total_found 是在索引中找到的匹配总数,而 found 是返回的结果数。这两者可能不同,因为您可以更改每次返回多少个匹配结果以及要返回哪批匹配结果,哪个结果利于对冗长的结果列表分页。请查看 API 调用 SetLimits()。一个分页示例是用 $cl->SetLimits( ( $page - 1 ) * SPAN, SPAN ) 调用搜索引擎返回第一批、第二批、第三批(依此类推)SPAN 匹配结果,这取决于显示哪个页面。

  结束语

  Sphinx 还有更多的功能可以利用。我在这里仅仅介绍了最浅显的一部分,但是您现在有一个可以工作的现实示例作为基石来扩展您的技能。

  仔细研读随发行版附带的样例 Sphinx 配置文件 /usr/local/etc/sphinx.conf.dist。该文件中的注释将说明每个 Sphinx 参数可以实现的功能;展示如何创建分布式冗余配置;并说明如何继承基本设置以避免源代码及索引中的重复。Sphinx README 文件还是十分丰富的信息源,包括如何将 Sphinx 直接嵌入 MySQL V5 —— 不需要使用守护程序。

 

    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-13993-1.html
网站维护教程更新时间:2012-03-30 05:07:03  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer