1Serializer 2========== 3 4Introduction 5------------ 6This library allows you to (de-)serialize data of any complexity. Currently, it supports XML, JSON, and YAML. 7 8It also provides you with a rich tool-set to adapt the output to your specific needs. 9 10Built-in features include: 11 12- (De-)serialize data of any complexity; circular references are handled gracefully. 13- Supports many built-in PHP types (such as dates) 14- Integrates with Doctrine ORM, et. al. 15- Supports versioning, e.g. for APIs 16- Configurable via PHP, XML, YAML, or Doctrine Annotations 17 18Installation 19------------ 20This library can be easily installed via composer 21 22.. code-block :: bash 23 24 composer require jms/serializer 25 26or just add it to your ``composer.json`` file directly. 27 28Usage 29----- 30For standalone projects usage of the provided builder is encouraged:: 31 32 $serializer = JMS\Serializer\SerializerBuilder::create()->build(); 33 $jsonContent = $serializer->serialize($data, 'json'); 34 echo $jsonContent; // or return it in a Response 35 36Documentation 37------------- 38 39.. toctree :: 40 :hidden: 41 42 configuration 43 usage 44 event_system 45 handlers 46 reference 47 cookbook 48 49- :doc:`Configuration <configuration>` 50- :doc:`Usage <usage>` 51- :doc:`Events <event_system>` 52- :doc:`Handlers <handlers>` 53 54- Recipes 55 * :doc:`/cookbook/exclusion_strategies` 56 57- Reference 58 * :doc:`Annotations </reference/annotations>` 59 * :doc:`XML Reference </reference/xml_reference>` 60 * :doc:`YML Reference </reference/yml_reference>` 61 62License 63------- 64 65The code is released under the business-friendly `MIT license`_. 66 67Documentation is subject to the `Attribution-NonCommercial-NoDerivs 3.0 Unported 68license`_. 69 70.. _MIT license: https://opensource.org/licenses/MIT 71.. _Attribution-NonCommercial-NoDerivs 3.0 Unported license: http://creativecommons.org/licenses/by-nc-nd/3.0/ 72 73