जैसा कि स्टैक ओवरफ्लो टिप्पणियों में बताया गया है, आपकी ब्राउज़र क्वेरी आपके PHP क्लाइंट आधारित क्वेरी से अलग है - इसे समीकरण से निकालने के लिए आपको इस सुधार के साथ परीक्षण करना चाहिए। ब्राउज़र आधारित क्वेरी के समान परिणाम प्राप्त करने के लिए आपको PHP कोड कुछ इस तरह दिखना चाहिए:
$solr = new Apache_Solr_Client(...);
$searchOptions = array(
'sort' => 'mod_date desc'
);
$results = $solr->search("bmw", 0, 10, $searchOptions);
इसके बजाय, मुझे लगता है कि यह और अधिक दिखता है:
$searchOptions = array(
'fq' => 'category:"Bilar" + car_action:Sälje',
'sort' => 'mod_date desc'
)
$solr->search("\*:*", 0, 10, $searchOptions);
मैं आपको जो देखने की उम्मीद करता हूं वह यह है कि PHP क्लाइंट परिणाम ब्राउज़र आधारित परिणामों के समान होंगे, और मुझे लगता है कि ऐसा ही होगा यदि आपने इसे विपरीत तरीके से किया - PHP क्लाइंट से अपने वर्तमान पैरामीटर लें और उन्हें सही ढंग से लागू करें ब्राउज़र आधारित क्वेरी।
अब आपकी समस्या पर, आप दस्तावेज़ों को ठीक से क्रमबद्ध नहीं देखते हैं।
मैं इस क्वेरी का प्रयास करूंगा, जो PHP क्लाइंट आधारित कोड के बराबर है:
http://localhost:8983/solr/select/?&q=%2A%3A%2A&fq=+category%3A%22Bilar%22+%2B+car_action%3AS%C3%A4ljes&sort=mod_date+desc
बनाम यह क्वेरी, जो फ़िल्टर क्वेरी को मुख्य क्वेरी में ले जाती है:
http://localhost:8983/solr/select/?&q=+category%3A%22Bilar%22+%2B+car_action%3AS%C3%A4ljes&sort=mod_date+desc
और देखें कि क्या कोई अंतर है। यदि ऐसा है, तो यह एक बग हो सकता है कि कैश्ड फ़िल्टर किए गए प्रश्नों के परिणामों का उपयोग कैसे किया जाता है और सोलर द्वारा क्रमबद्ध किया जाता है - जो क्लाइंट के साथ कोई समस्या नहीं होगी, बल्कि सोलर सेवा स्वयं ही होगी।
आशा है कि यह आपको एक उत्तरदाता के करीब ले जाएगा।