PHP

A sample PHP application can be found on GitHub https://github.com/searchly/searchly-php-sample.

Installation

Documentation targets official PHP client for Elasticsearch

Add elasticsearch client dependency to your composer.json file and ;

<span class="pun">{</span><br><span class="pln">    </span><span class="str">"require"</span><span class="pun">:</span><span class="pln"> </span><span class="pun">{</span><br><span class="pln">        </span><span class="str">"elasticsearch/elasticsearch"</span><span class="pun">:</span><span class="pln"> </span><span class="str">"~1.0"</span><br><span class="pln">    </span><span class="pun">}</span><br><span class="pun">}</span><br>
				

Update application dependencies with composer;

$ php composer.phar install<br>
				

Create Client

<span class="pln">$params</span><span class="pun">[</span><span class="str">'hosts'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> array </span><span class="pun">(</span><br><span class="str">'https://site:api-key@xyz.searchly.com:443'</span><br><span class="pun">);</span><br><span class="pln">$client </span><span class="pun">=</span><span class="pln"> </span><span class="kwd">new</span><span class="pln"> </span><span class="typ">Elasticsearch</span><span class="pln">\Client</span><span class="pun">(</span><span class="pln">$params</span><span class="pun">);</span><br>
				

Index Creation

<span class="pln">$indexParams</span><span class="pun">[</span><span class="str">'index'</span><span class="pun">]</span><span class="pln">  </span><span class="pun">=</span><span class="pln"> </span><span class="str">'sample'</span><span class="pun">;</span><br><span class="pln">$client</span><span class="pun">-></span><span class="pln">indices</span><span class="pun">()-></span><span class="pln">create</span><span class="pun">(</span><span class="pln">$indexParams</span><span class="pun">);</span><br>
				

Search

Index a document;

<span class="pln">$document </span><span class="pun">=</span><span class="pln"> array</span><span class="pun">(</span><br><span class="pln">    name </span><span class="pun">=></span><span class="pln"> </span><span class="str">'Reliability'</span><span class="pun">,</span><br><span class="pln">    text </span><span class="pun">=></span><span class="pln"> </span><span class="str">'Reliability is improved if multiple redundant sites are used, which makes well-designed cloud computing suitable for business continuity.'</span><br><span class="pln"> </span><span class="pun">);</span><br><span class="pln">$params </span><span class="pun">=</span><span class="pln"> array</span><span class="pun">();</span><br><span class="pln">$params</span><span class="pun">[</span><span class="str">'body'</span><span class="pun">]</span><span class="pln">  </span><span class="pun">=</span><span class="pln"> $document</span><span class="pun">;</span><br><span class="pln">$params</span><span class="pun">[</span><span class="str">'index'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">'sample'</span><span class="pun">;</span><br><span class="pln">$params</span><span class="pun">[</span><span class="str">'type'</span><span class="pun">]</span><span class="pln">  </span><span class="pun">=</span><span class="pln"> </span><span class="str">'document'</span><span class="pun">;</span><br><span class="pln">$client</span><span class="pun">-></span><span class="pln">index</span><span class="pun">(</span><span class="pln">$params</span><span class="pun">);</span><br>
				

You can search indexed document as:

<span class="pln">$searchParams</span><span class="pun">[</span><span class="str">'body'</span><span class="pun">][</span><span class="str">'query'</span><span class="pun">][</span><span class="str">'match'</span><span class="pun">][</span><span class="str">'text'</span><span class="pun">]</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> </span><span class="str">'Reliability'</span><span class="pun">;</span><br><span class="pln">$results </span><span class="pun">=</span><span class="pln"> $client</span><span class="pun">-></span><span class="pln">search</span><span class="pun">(</span><span class="pln">$searchParams</span><span class="pun">);</span><br>
				

Useful Resources

PHP client has very detailed documentation at official Elasticsearch site.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.