Sphinx 和主键列

问题描述 投票:0回答:1

我正在尝试了解 Sphinx 搜索服务器。我让它通过命令行和 PHP 工作。唯一令人烦恼的是,当我为表建立索引时,Sphinx 返回一条通知,指出它找不到主键列并“忽略”该列。无论如何它都有效,所以我没有太在意,但现在我注意到我从我的搜索脚本中收到 PHP 通知,指出主键列 q_id 未定义。该脚本有效并返回正确的 q_ids,但我不喜欢收到通知。

这是一个片段,以便您可以看到我试图在哪里获取主键列。

$row_ids = array();
  if ( ! empty($result["matches"]) ) {
      foreach ( $result["matches"] as $doc => $docinfo ) {

   array_push($row_ids, $docinfo['q_id']);
      } 

我知道 Sphinx 无法识别主键是什么,但我认为它仍然可以索引该列,并且它必须对其执行某些操作,因为搜索返回正确的 q_ids。我哪里错了?谢谢。

php primary-key sphinx
1个回答
1
投票

“q_id”是一个属性吗?

会是这样的

  foreach ( $result["matches"] as $doc => $docinfo ) {
       array_push($row_ids, $docinfo['attrs']['q_id']);
  } 

你应该执行 print_r($result);看到一切都回来了...

© www.soinside.com 2019 - 2024. All rights reserved.