1. Go to this page and download the library: Download jedrzej/searchable library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
jedrzej / searchable example snippets
use Jedrzej\Searchable\SearchableTrait;
class Post extends Eloquent
{
use SearchableTrait;
// either a property holding a list of searchable fields...
public $searchable = ['title', 'forum_id', 'user_id', 'created_at'];
// ...or a method that returns a list of searchable fields
public function getSearchableAttributes()
{
return ['title', 'forum_id', 'user_id', 'created_at'];
}
}
public $searchable = ['*'];
use Jedrzej\Searchable\SearchableTrait;
class Post extends Eloquent
{
use SearchableTrait;
// either a property holding a list of not searchable fields...
public $notSearchable = ['created_at'];
// ...or a method that returns a list of not searchable fields
public function getNotSearchableAttributes()
{
return ['created_at'];
}
}
// return all posts with forum_id equal to $forum_id
Post::filtered(['forum_id' => $forum_id])->get();
// return all posts with with <operator> applied to forum_id
Post::filtered(['forum_id' => <operator>])->get();
// if you append ?forum_id=<operator> to the URL, you'll get all Posts with <operator> applied to forum_id
Post::filtered()->get();
// use one filter to search in multiple columns
protected function processNameFilter(Builder $builder, Constraint $constraint)
{
// this logic should happen for LIKE/EQUAL operators only
if ($constraint->getOperator() === Constraint::OPERATOR_LIKE || $constraint->getOperator() === Constraint::OPERATOR_EQUAL) {
$builder->where(function ($query) use ($constraint) {
$query->where('first_name', $constraint->getOperator(), $constraint->getValue())
->orWhere('last_name', $constraint->getOperator(), $constraint->getValue());
});
return true;
}
// default logic should be executed otherwise
return false;
}
OR
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.