schranz-search / seal-multi-adapter
支持将schranz-search/seal软件包写入多个其他适配器的适配器。
资助包维护!
alexander-schranz
paypal.me/L91
0.4.0
2024-03-18 21:03 UTC
Requires
- php: ^8.1
- psr/container: ^1.0 || ^2.0
- schranz-search/seal: ^0.4
Requires (Dev)
- php-cs-fixer/shim: ^3.51
- phpstan/extension-installer: ^1.2
- phpstan/phpstan: ^1.10
- phpstan/phpstan-phpunit: ^1.3
- phpunit/phpunit: ^10.3
- rector/rector: ^1.0
README
Schranz Search SEAL
多适配器
MultiAdapter
允许写入多个适配器。
注意:这是
schranz-search/schranz-search
项目的组成部分,请在 主仓库 中创建问题。
注意:该项目正在积极开发中,任何反馈都将受到高度重视。
用法
通常与 ReadWriteAdapter
结合使用,以便仍然写入两个索引。
以下代码展示了如何使用此适配器创建引擎
<?php use Schranz\Search\SEAL\Adapter\Elasticsearch\ElasticsearchAdapter; use Schranz\Search\SEAL\Adapter\Multi\MultiAdapter; use Schranz\Search\SEAL\Adapter\ReadWrite\ReadWriteAdapter; use Schranz\Search\SEAL\Engine; $readAdapter = new ElasticsearchAdapter(/* .. */); // can be any adapter $writeAdapter = new ElasticsearchAdapter(/* .. */); // can be any adapter $engine = new Engine( new ReadWriteAdapter( $readAdapter, new MultiAdapter( $readAdapter, $writeAdapter, ), ), $schema, );
通过您喜欢的框架的DSN
multi://readAdapter?adapters[]=writeAdapter read-write://readAdapter?write=multiAdapter
注意:
MultiAdapter
不支持search
方法,因此需要ReadWriteAdapter
。