Ben sphinxapi.php kullanarak Zend yoluyla kullanmak bu sfenks arama motoru var. Bu harika çalışıyor. Gerçekten gerçekten harika.
Ancak bir sorun var: Bu rastgele başarısız.
// Prepare Sphinx search
$sphinxClient = new SphinxClient();
$sphinxClient->SetServer($ip, $port);
$sphinxClient->SetConnectTimeout( 10 );
$sphinxClient->SetMatchMode( SPH_MATCH_ANY );
$sphinxClient->SetLimits( $resultsPerPage * ($nPage - 1), $resultsPerPage );
$sphinxClient->SetArrayResult( true );
$query = array();
$query['lang'] = '@lang "lang' . $language . '"';
if (isset($params)) {
foreach ($params as $param) {
$query['tags'] = '@tags "' . $param . '"';
}
}
// Make the Sphinx search
$sphinxClient->SetMatchMode(SPH_MATCH_EXTENDED);
$sphinxResult = $sphinxClient->Query(implode(' ', $query), '*');
Burada görüldüğü gibi, ben etiketleri bir dil ve keyfi bir miktar aramak, (yerine sorgular bir battleload yapma) sonunda tek bir sorgu dizesi içine imploded.
Yani, normalde bu bir cazibe gibi çalışır, ama içerim sfenks hem sonuçlar uyacak 2000 İngilizce girişleri ve, diyelim ki, tag "resim" (veya diğer bazı tamamen ingilizce kelime) ile 1000 giriş ama SIFIR vurur, bulduğu döndürür tamamen yanlıştır. Aslında, sayfa her şeyi ferahlatıcı 800 gerçek sonuçları gibi bir şey normale döner.
Benim sorum, neden bunu yapıyor ve nasıl bunu durdurmak yapabilirim nedir?
Herhangi bir fikir?
: Edit: Ekleme kısaltılmış çıktı günlük
[error] =>
[warning] =>
...
[total] => 0
[total_found] => 0
[time] => 0.000
[words] => Array (
[langen] => Array (
[docs] => 2700
[hits] => 2701 )
[picture] => Array (
[docs] => 829
[hits] => 1571 ) ) )