Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Php Client Bundle

Php Client Bundle Laravel Package

elastification/php-client-bundle

Symfony bundle that integrates the Elastification PHP Elasticsearch client, with configurable HTTP or Thrift transports, native/JMS serializers, and ready-made index, search, document, and cat repositories.

View on GitHub
Deep Wiki
Context7

Symfony2 Bundle

Frequently asked questions about Php Client Bundle
Can I use elastification/php-client-bundle in a Laravel application?
No. The package is a Symfony2 bundle that registers its Elasticsearch client through the Symfony DI container and AppKernel, so it has no Laravel service provider or facade integration. Laravel applications would need a full rewrite of the bundle wiring rather than a simple Composer install. Treat it as Symfony 2.x-only unless you vendor and reimplement the client layer.
Which Laravel versions does this package support?
None. There is no declared Laravel support and no Laravel service provider, configuration publishing, or facade. The stated stack target is Symfony 2.7/2.8 LTS, PHP 5.6 to 7.0, and Elasticsearch 1.x. For Laravel projects you should use a maintained Laravel-specific Elasticsearch package instead.
Which Elasticsearch versions are supported by elastification/php-client-bundle?
The bundle targets Elasticsearch 1.x; the sample configuration uses elasticsearch_version 1.4.1 and the Thrift transport only exists in Elasticsearch 1.x. Thrift was removed from Elasticsearch at 2.0, and mapping and query DSL assumptions diverge for 5.x and later. Do not expect it to work against modern Elasticsearch clusters.
How do I install and configure elastification/php-client-bundle?
Install with Composer using a constraint below 1.0, then register ElastificationPhpClientBundle in app/config/AppKernel.php and configure elastification_php_client in app/config.yml. You must also install either guzzlehttp/guzzle below 7.0 for HTTP or munkie/elasticsearch-thrift-php for Thrift. The DIC service id for the client is elastification_php_client.
What is the difference between the HTTP and Thrift transports?
HTTP transport uses Guzzle and is the only viable path for most installations. Thrift transport depends on munkie/elasticsearch-thrift-php and only works with Elasticsearch 1.x because Thrift was removed upstream at 2.0. If Thrift is in use, migration is a protocol change, not just a client swap.
What serializer service IDs does the bundle provide and can I replace them?
The native serializer is elastification_php_client.serializer.native, and JMS serializers are provided for search and document repositories. You can set search_repository_serializer_dic_id, index_repository_serializer_dic_id, and document_repository_serializer_dic_id in configuration. The serializer abstraction is the most reusable part, but those service IDs are Symfony-specific.
Is elastification/php-client-bundle maintained and production-ready?
It shows no tagged stable release, no dependents, and zero stars, with only a Travis CI badge as evidence of testing. The dependency stack is end-of-life: Symfony 2.x, PHP 5.x, Elasticsearch 1.x, and Guzzle below 7.0. For production use it should be treated as high risk and only adopted with a vendored fork and documented exit plan.
Why does the Guzzle below 7.0 requirement cause Composer conflicts?
The bundle expects Guzzle 5-era APIs and declares guzzlehttp/guzzle below 7.0, which conflicts with most current SDKs and Laravel packages that require Guzzle 6 or 7. That constraint also pulls an unpatched dependency tree that may appear in composer audit or vulnerability scans. This is often a governance blocker even when the code path is not executed.
How should I test or verify this bundle before adopting it?
Verify against a Symfony 2.7/2.8 LTS application on PHP 5.6 to 7.0 with an Elasticsearch 1.x server, and pin the exact commit because there is no tagged stable release. Run composer audit and local integration tests for the repository and serializer contracts you depend on. Do not assume Travis CI still executes or that test coverage exists.
What are better alternatives for Elasticsearch integration in Laravel?
For Laravel, use maintained packages such as Laravel Scout with an Elasticsearch driver, or the official elasticsearch/elasticsearch client wrapped in your own service provider. If you only need the repository and serializer contracts, reimplement them behind your own interfaces using a modern client. This Symfony2 bundle is not a sensible greenfield dependency for Laravel.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
cgv/localized-resource