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