(PECL yaml >= 0.4.0)

yaml_parse_fileParse a YAML stream from a file


mixed yaml_parse_file ( string $filename [, int $pos = 0 [, int &$ndocs [, array $callbacks ]]] )

Convert all or part of a YAML document stream read from a file to a PHP variable.



Path to the file.


Document to extract from stream (-1 for all documents, 0 for first document, ...).


If ndocs is provided, then it is filled with the number of documents found in stream.


Content handlers for YAML nodes. Associative array of YAML tag => callable mappings. See parse callbacks for more details.

Return Values

Returns the value encoded in input in appropriate PHP type or FALSE on failure. If pos is -1 an array will be returned with one entry for each document found in the stream.



Processing untrusted user input with yaml_parse_file() is dangerous if the use of unserialize() is enabled for nodes using the !php/object tag. This behavior can be disabled by using the yaml.decode_php ini setting.

See Also

add a note add a note

User Contributed Notes 1 note

Jesse Donat
3 years ago
This is entirely dependent on type detection - as far as I can find there is no way to force a type and for instance when you have a very long integer as a value - in my case 1313035348823 it gets limited to 2147483647 - PHP's max integer.
To Top