1. Go to this page and download the library: Download vae/php-elasticsearch-orm 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/ */
use \Vae\PhpElasticsearchOrm\Builder;
use \Vae\PhpElasticsearchOrm\Query;
use \Vae\PhpElasticsearchOrm\Grammar;
class OrmElasticsearchClientFactory{
public static function builder()
{
// 如果在协程环境下创建,则会自动使用协程版的 Handler,非协程环境下无改变
$hyperfBuilder = ApplicationContext::getContainer()->get(ClientBuilderFactory::class)->create();
$client = $hyperfBuilder->setHosts(['http://127.0.0.1:9200'])->build();
return new Builder(new Query(new Grammar(), $client));
}
}
//select one
$builder->index('index')->first();
//select all
$builder->index('index')->get();
//select with paginate
$builder->index('index')->paginate($page, $size) : Collection
//select by id
$builder->byId($id) : stdClass
//select by id if failed throw error
$builder->byIdOrFail($id) : stdClass
//select chunk
$builder->chunk(callback $callback, $limit = 2000, $scroll = '10m')
$builder->count() : int
$builder->whereTerm('key', 'value');
//value without add wildcard '*'
$builder->whereLike('key', 'value');