Original Client Code Contributed By Brian Lucas:
There are two classes for PHP:
SolrUpdate and
SolrQuery.
:TODO:
- clean up some of the XML writing code -- it's a tad "kludgy" right now.
- abstract out more of the logic into configurable variables
- add back in the logging and debugging classes that clean up the "echo" calls
Alternative Client Contributed by Donovan Jimenez:
Zip archive can be found at
SolrPhpClient
Adding, Deleting (by id and query), committing, optimizing and of course searching against a Solr instance
Written for PHP 5 in Zend Framework / PEAR coding style
PHPDoc generated API documentation included
See link above for example usage in the description
Using Solr's PHP Output (Solr Version >=1.3)
Solr has a PHP response format that outputs an array (as PHP code) which can be eval'd.
https://issues.apache.org/jira/browse/SOLR-196
Example usage:
$code = file_get_contents('http://localhost:8983/solr/select?q=iPod&wt=php');
eval("$result = " . $code . ";");
print_r($result);
Using Solr's PHP Serialized Output (Solr Version >=1.3)
Solr has a PHP response format that outputs a serialized array.
https://issues.apache.org/jira/browse/SOLR-196
Example usage:
$serializedResult = file_get_contents('http://localhost:8983/solr/select?q=iPod&wt=phps');
$result = unserialize($serializedResult);
print_r($result);
In order to use either PHP or Serialized PHP Response Writers, you may first need to uncomment these two lines in your solrconfig.xml:
<queryResponseWriter name="php" class="org.apache.solr.request.PHPResponseWriter"/> <queryResponseWriter name="phps" class="org.apache.solr.request.PHPSerializedResponseWriter"/>