Sphinx字段搜索运算符不能使用PHP的SphinxClient
问题描述:
I can't seem to get the field search operator working from php.
A search like @first Bob
works fine from the command line search
tool, but when done from PHP it returns no results. (Just searching Bob
from PHP also returns lots of results with a first name of Bob.)
Here's what I'm doing:
$sphinx = new SphinxClient();
$sphinx->setServer("localhost", 9312);
$sphinx->setMatchMode(SPH_MATCH_EXTENDED2);
$result = $sphinx->query("@first Bob");
It's been a few years since I've done much with Sphinx. Any idea what I've missed?
This is with Sphinx 2.0.8 and PHP 5.3.3
答
At a guess, because you're not specifying an index to search it's trying to search some index(es) that doesn't have the field, and it's choking.
$result = $sphinx->query("@first Bob",'index1');
Use getLastError/getLastWarning to see error messages!