Setting the Serializer

edit

Requests are given to the client in the form of associative arrays, but Elasticsearch expects JSON. The Serializer’s job is to serialize PHP objects into JSON. It also de-serializes JSON back into PHP arrays. This seems trivial, but there are a few edgecases which make it useful for the serializer to remain modular.

The majority of people will never need to change the default serializer (SmartSerializer), but if you need to, it can be done via the setSerializer() method:

$serializer = '\Elasticsearch\Serializers\SmartSerializer';
$client = ClientBuilder::create()
            ->setSerializer($serializer)
            ->build();

For more details, please see the dedicated page on configuring serializers.