# SwishSearch->execute

(PECL swish:0.1-0.3.0)

SwishSearch->execute — Execute the search and get the results

### Description

object SwishSearch->execute ([ string `$query` ] )
Warning

This function is EXPERIMENTAL. The behaviour of this function, the name of this function, and anything else documented about this function may change without notice in a future release of PHP. Use this function at your own risk.

Searches the index file(s) based on the parameters set in the search object.

### Parameters

`query`

  The query string is an optional parameter, it can be also set using Swish->prepare() method. The query string is preserved between executions, so you can set it once, but execute the search multiple times.

### Return Values

Returns SwishResults object.

### Errors/Exceptions

Throws SwishException on error.

### Examples

Example#1 Basic SwishSearch->execute() example

`<?php
try {
$swish = new Swish("index.swish-e");
$search = $swish->prepare();
$results = $search->execute("query");
echo "First query found: ", $results->hits, " hits\n";
$results = $search->execute("new OR query");
echo "Second query found: ", $results->hits, " hits\n";
} catch (SwishException $e) {
echo $e->getMessage(), "\n";
}
?>`

The above example will output something similar to:

    First query found: 2 hits
    Second query found: 12 hits