gpt4 book ai didi

php - 我如何使用php将Elasticsearch集成到mysql

转载 作者:行者123 更新时间:2023-12-02 23:48:02 25 4
gpt4 key购买 nike

我正在开发一个需要使用Elasticsearch的项目。我遵循了指南: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);

现在,这只是基本的事情。现在,我想要将其与Mysql集成在一起,即当我更新或插入数据库中的表时,它会在Elasticsearch中自动索引。
我知道,我们有Logstash,可以在给定间隔后不断查询db并索引到elasticsearch中。但是,我希望使用PHP而不使用Logstash将索引插入db后自动发生索引。
我知道在(nodeJs + mongodb)这样的库。 monososatics: https://www.npmjs.com/package/mongoosastic。在php中有没有可以自动执行此任务的库。如果您知道示例代码,请提供给我。

最佳答案

确实有可以自动执行此任务的库。但是,通常需要使用象Doctrine这样的ORM才能正常地连接到数据库实现。如果您能够在项目中使用Symfony框架,则存在一个名为FOSElasticaBundle的库,该库可使索引与数据库操作保持同步。

关于php - 我如何使用php将Elasticsearch集成到mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59781218/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com