You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-dev@lucene.apache.org by "Mark Lindeman (JIRA)" <ji...@apache.org> on 2009/01/29 14:48:59 UTC

[jira] Commented: (SOLR-341) PHP Solr Client

    [ https://issues.apache.org/jira/browse/SOLR-341?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12668470#action_12668470 ] 

Mark Lindeman commented on SOLR-341:
------------------------------------

in Apache/Solr/Document.php on line 218:
$this->_fieldBoosts = $boost;

this should be:
$this->_fieldBoosts[$key] = $boost;

If I do not use the $fieldboost parameter in setField() method, than I end up with a document full off boost="" parameters which triggers errors in Solr 1.3


> PHP Solr Client
> ---------------
>
>                 Key: SOLR-341
>                 URL: https://issues.apache.org/jira/browse/SOLR-341
>             Project: Solr
>          Issue Type: New Feature
>          Components: clients - php
>    Affects Versions: 1.2
>         Environment: PHP >= 5.2.0 (or older with JSON PECL extension or other json_decode function implementation). Solr >= 1.2
>            Reporter: Donovan Jimenez
>            Priority: Trivial
>             Fix For: 1.4
>
>         Attachments: SolrPhpClient.2008-09-02.zip, SolrPhpClient.2008-11-14.zip, SolrPhpClient.2008-11-25.zip, SolrPhpClient.zip
>
>
> Developed this client when the example PHP source didn't meet our needs.  The company I work for agreed to release it under the terms of the Apache License.
> This version is slightly different from what I originally linked to on the dev mailing list.  I've incorporated feedback from Yonik and "hossman" to simplify the client and only accept one response format (JSON currently).
> When Solr 1.3 is released the client can be updated to use the PHP or Serialized PHP response writer.
> example usage from my original mailing list post:
> <?php
> require_once('Solr/Service.php');
> $start = microtime(true);
> $solr = new Solr_Service(); //Or explicitly new Solr_Service('localhost', 8180, '/solr');
> try
> {
>         $response = $solr->search('solr', 0, 10,
>                 array(/* you can include other parameters here */));
>         echo 'search returned with status = ', $response->responseHeader->status,
>                 ' and took ', microtime(true) - $start, ' seconds', "\n";
>         //here's how you would access results
>         //Notice that I've mapped the values by name into a tree of stdClass objects
>         //and arrays (actually, most of this is done by json_decode )
>         if ($response->response->numFound > 0)
>         {
>                 $doc_number = $response->response->start;
>                 foreach ($response->response->docs as $doc)
>                 {
>                         $doc_number++;
>                         echo $doc_number, ': ', $doc->text, "\n";
>                 }
>         }
>         //for the purposes of seeing the available structure of the response
>         //NOTE: Solr_Response::_parsedData is lazy loaded, so a print_r on the response before
>         //any values are accessed may result in different behavior (in case
>         //anyone has some troubles debugging)
>         //print_r($response);
> }
> catch (Exception $e)
> {
>         echo $e->getMessage(), "\n";
> }
> ?>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.