Skip to content

Commit

Permalink
Merge branch '3.0' into 3.1
Browse files Browse the repository at this point in the history
  • Loading branch information
wouterj committed May 21, 2016
2 parents bce6255 + a1f8c3a commit 5853272
Show file tree
Hide file tree
Showing 4 changed files with 58 additions and 21 deletions.
3 changes: 0 additions & 3 deletions components/phpunit_bridge.rst
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,6 @@ related to deprecations.
Time-sensitive Tests
--------------------

.. versionadded:: 2.8
Support for clock mocking was introduced in Symfony 2.8.

Use Case
~~~~~~~~

Expand Down
67 changes: 58 additions & 9 deletions components/yaml/introduction.rst
Original file line number Diff line number Diff line change
Expand Up @@ -162,12 +162,6 @@ array to its YAML representation:
file_put_contents('/path/to/file.yml', $yaml);
.. note::

Of course, the Symfony Yaml dumper is not able to dump resources. Also,
even if the dumper is able to dump PHP objects, it is considered to be a
not supported feature.

If an error occurs during the dump, the parser throws a
:class:`Symfony\\Component\\Yaml\\Exception\\DumpException` exception.

Expand All @@ -178,7 +172,10 @@ If you only need to dump one array, you can use the
use Symfony\Component\Yaml\Yaml;
$yaml = Yaml::dump($array, $inline);
$yaml = Yaml::dump($array);
Array Expansion and Inlining
............................

The YAML format supports two kind of representation for arrays, the expanded
one, and the inline one. By default, the dumper uses the inline
Expand All @@ -194,7 +191,7 @@ representation to the inline one:

.. code-block:: php
echo $dumper->dump($array, 1);
echo Yaml::dump($array, 1);
.. code-block:: yaml
Expand All @@ -203,7 +200,7 @@ representation to the inline one:
.. code-block:: php
echo $dumper->dump($array, 2);
echo Yaml::dump($array, 2);
.. code-block:: yaml
Expand All @@ -212,6 +209,58 @@ representation to the inline one:
foo: bar
bar: baz
Indentation
...........

By default the YAML component will use 4 spaces for indentation. This can be
changed using the third argument as follows::

// use 8 spaces for indentation
echo Yaml::dump($array, 2, 8);

.. code-block:: yaml
foo: bar
bar:
foo: bar
bar: baz
Invalid Types and Object Serialization
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

By default the YAML component will encode any "unsupported" type (i.e.
resources and objects) as ``null``.

Instead of encoding as ``null`` you can choose to throw an exception if an invalid
type is encountered in either the dumper or parser as follows::

// throw an exception if a resource or object is encountered
Yaml::dump($data, 2, 4, true);

// throw an exception if an encoded object is found in the YAML string
Yaml::parse($yaml, true);

However, you can activate object support using the next argument::

$object = new \stdClass();
$object->foo = 'bar';

$dumped = Yaml::dump($object, 2, 4, false, true);
// !!php/object:O:8:"stdClass":1:{s:5:"foo";s:7:"bar";}

$parsed = Yaml::parse($dumped, false, true);
var_dump(is_object($parsed)); // true
echo $parsed->foo; // bar

The YAML component uses PHP's ``serialize()`` method to generate a string
representation of the object.

.. caution::

Object serialization is specific to this implementation, other PHP YAML
parsers will likely not recognize the ``php/object`` tag and non-PHP
implementations certainly won't - use with discretion!

.. _YAML: http://yaml.org/
.. _Packagist: https://packagist.org/packages/symfony/yaml
.. _`YAML 1.2 version specification`: http://yaml.org/spec/1.2/spec.html
3 changes: 0 additions & 3 deletions reference/forms/types/entity.rst
Original file line number Diff line number Diff line change
Expand Up @@ -205,9 +205,6 @@ return a ``QueryBuilder``.
If you'd like to display an empty list of entries, you can return ``null`` in
the Closure.

.. versionadded:: 2.8
Returning ``null`` in the Closure was introduced in Symfony 2.8.

Overridden Options
------------------

Expand Down
6 changes: 0 additions & 6 deletions reference/twig_reference.rst
Original file line number Diff line number Diff line change
Expand Up @@ -345,9 +345,6 @@ information in :ref:`book-templating-pages`.
absolute_url
~~~~~~~~~~~~

.. versionadded:: 2.7
The ``absolute_url()`` function was introduced in Symfony 2.7.

.. code-block:: jinja
{{ absolute_url(path) }}
Expand All @@ -370,9 +367,6 @@ you're on the following page in your app:
relative_path
~~~~~~~~~~~~~

.. versionadded:: 2.7
The ``relative_path()`` function was introduced in Symfony 2.7.

.. code-block:: jinja
{{ relative_path(path) }}
Expand Down

0 comments on commit 5853272

Please sign in to comment.