Som påpeget i stack overflow-kommentarerne, er din browserforespørgsel anderledes end din php-klientbaserede forespørgsel - for at fjerne det fra ligningen bør du teste med dette rettet. For at få de samme resultater som den browserbaserede forespørgsel, skulle din php-kode have set sådan ud:
$solr = new Apache_Solr_Client(...);
$searchOptions = array(
'sort' => 'mod_date desc'
);
$results = $solr->search("bmw", 0, 10, $searchOptions);
I stedet forestiller jeg mig, at det mere ligner:
$searchOptions = array(
'fq' => 'category:"Bilar" + car_action:Sälje',
'sort' => 'mod_date desc'
)
$solr->search("\*:*", 0, 10, $searchOptions);
Det, jeg forventer, at du ser, er, at php-klientens resultater vil være de samme som de browserbaserede resultater, og jeg forestiller mig, at det samme ville ske, hvis du gjorde det på den modsatte måde - tag dine nuværende parametre fra php-klienten og anvendte dem korrekt på browserbaseret forespørgsel.
Nu til dit problem, kan du ikke se dokumenter sorteret korrekt.
Jeg ville prøve denne forespørgsel, som svarer til den php-klientbaserede kode:
http://localhost:8983/solr/select/?&q=%2A%3A%2A&fq=+category%3A%22Bilar%22+%2B+car_action%3AS%C3%A4ljes&sort=mod_date+desc
versus denne forespørgsel, som flytter filterforespørgslen ind i hovedforespørgslen:
http://localhost:8983/solr/select/?&q=+category%3A%22Bilar%22+%2B+car_action%3AS%C3%A4ljes&sort=mod_date+desc
og se om der er forskel. Hvis der er det, så kan det være en fejl i, hvordan resultater fra cachede filtrerede forespørgsler bruges og sorteres efter solr - hvilket ikke ville være et problem for klienten, men selve solr-tjenesten.
Håber dette bringer dig tættere på en anser.