Я работал над проектом, который требуется для использования эластичного поиска. Я следовал руководству: https://www.elastic.co/guide/en/elasticsearch/client/php-api/current/index.html Это прекрасно работает для меня:
require 'vendor/autoload.php';
use Elasticsearch\ClientBuilder;
$hosts = [
'myhost'
];
$client = ClientBuilder::create() // Instantiate a new ClientBuilder
->setHosts($hosts) // Set the hosts
->build();
$params = [
'index' => 'php-demo-index',
'type' => 'doc',
'id' => 'my_id',
'body' => ['testField' => 'abc']
];
$response = $client->index($params);
print_r($response);
Теперь это только базовая вещь c. Теперь я хочу интегрировать это с Mysql, т.е. когда я обновляю или вставляю в свою таблицу в базе данных, она автоматически индексируется вasticsearch. Я знаю, что у нас есть Logsta sh, который может постоянно запрашивать БД по истечении заданного интервала времени и индексировать вasticsearch. Но я хочу, чтобы индексирование происходило автоматически после вставки в БД с использованием PHP без logsta sh. Я знаю такую библиотеку в (nodeJs + mongodb) ie. mongoosastics: https://www.npmjs.com/package/mongoosastic. Есть ли в php какая-либо библиотека, которая может выполнить такую задачу автоматически. Пожалуйста, предоставьте мне пример кода, если вы его знаете.