Library for (de-)serializing data of any complexity; supports XML, JSON, and YAML.

Fund package maintenance!

Installs: 57 889 077

Dependents: 865

Suggesters: 72

Security: 0

Stars: 2 110

Watchers: 43

Forks: 562

Open Issues: 154

3.15.0 2021-10-14 20:02 UTC


GitHub Actions Packagist

alt text


This library allows you to (de-)serialize data of any complexity. Currently, it supports XML and JSON.

It also provides you with a rich tool-set to adapt the output to your specific needs.

Built-in features include:

  • (De-)serialize data of any complexity; circular references and complex exclusion strategies are handled gracefully.
  • Supports many built-in PHP types (such as dates, intervals)
  • Integrates with Doctrine ORM, et. al.
  • Supports versioning, e.g. for APIs
  • Configurable via XML, YAML, or Annotations


Learn more about the serializer in its documentation.


You are browsing the code for the 3.x version, if you are interested in the 1.x or 2.x version, check the 1.x and 2.x branches.

The version 3.x is the supported version (master branch). The 1.x and 2.x versions are not supported anymore.

For the 1.x and 2.x branches there will be no additional feature releases.
Security issues will be fixed till the 1st January 2020 and only critical bugs might receive fixes until the 1st September 2019.

Instructions on how to upgrade to 3.x are available in the UPGRADING document.

Professional Support

For eventual paid support please write an email to