YAML, YAML Ain't Markup Language, is a human friendly data serialization standard for all programming languages. YAML is a great format for your configuration files. YAML files are as expressive as XML files and as readable as INI files.
There is only one archive to download, and you are ready to go. No configuration, No installation. Drop the files in a directory and start using it today in your projects.
Released under the MIT license, you are free to do whatever you want, even in a commercial environment. You are also encouraged to contribute.
Symfony YAML was initially released as part of the symfony framework, one of the most popular PHP web framework. It is also embedded in other popular projects like PHPUnit or Doctrine.
Symfony YAML is fully documented, with a dedicated online book, and of course a full API documentation.
One of the goal of Symfony YAML is to find the right balance between speed and features. It supports just the needed feature to handle configuration files.
The library is fully unit-tested. With more than 400 unit tests, the library is stable and is already used in large projects.
It sports a real parser and is able to parse a large subset of the YAML specification, for all your configuration needs. It also means that the parser is pretty robust, easy to understand, and simple enough to extend.
Whenever you have a syntax problem with your YAML files, the library outputs a helpful message with the filename and the line number where the problem occurred. It eases the debugging a lot.
It is also able to dump PHP arrays to YAML with object support, and inline level configuration for pretty outputs.
Supports most of the YAML built-in types like dates, integers, octals, booleans, and much more...
Full support for references, aliases, and full merge key. Don't repeat yourself by referencing common configuration bits.
YAML files are dynamic. By embedding PHP code inside a YAML file, you have even more power for your configuration files.
