public static function Yaml::parse in Translation template extractor 6.3
Same name and namespace in other branches
- 7.3 vendor/Symfony/Component/Yaml/Yaml.php \Symfony\Component\Yaml\Yaml::parse()
 - 7.2 vendor/Symfony/Component/Yaml/Yaml.php \Symfony\Component\Yaml\Yaml::parse()
 
Parses YAML into a PHP array.
The parse method, when supplied with a YAML stream (string or file), will do its best to convert YAML in a file into a PHP array.
Usage: <code> $array = Yaml::parse('config.yml'); print_r($array); </code>
As this method accepts both plain strings and file names as an input, you must validate the input before calling this method. Passing a file as an input is a deprecated feature and will be removed in 3.0.
@api
Parameters
string $input Path to a YAML file or a string containing YAML:
Boolean $exceptionOnInvalidType True if an exception must be thrown on invalid types false otherwise:
Boolean $objectSupport True if object support is enabled, false otherwise:
Return value
array The YAML converted to a PHP array
Throws
ParseException If the YAML is not valid
7 calls to Yaml::parse()
- ParserTest::testEmptyValue in vendor/
Symfony/ Component/ Yaml/ Tests/ ParserTest.php  - ParserTest::testMappingInASequence in vendor/
Symfony/ Component/ Yaml/ Tests/ ParserTest.php  - @expectedException \Symfony\Component\Yaml\Exception\ParseException
 - ParserTest::testSequenceInAMapping in vendor/
Symfony/ Component/ Yaml/ Tests/ ParserTest.php  - @expectedException \Symfony\Component\Yaml\Exception\ParseException
 - YamlTest::testParseAndDump in vendor/
Symfony/ Component/ Yaml/ Tests/ YamlTest.php  - _potx_load_yaml_translation_patterns in ./
potx.inc  - Load the list of YAML translation patterns from a file.
 
File
- vendor/
Symfony/ Component/ Yaml/ Yaml.php, line 51  
Class
- Yaml
 - Yaml offers convenience methods to load and dump YAML.
 
Namespace
Symfony\Component\YamlCode
public static function parse($input, $exceptionOnInvalidType = false, $objectSupport = false) {
  // if input is a file, process it
  $file = '';
  if (strpos($input, "\n") === false && is_file($input)) {
    if (false === is_readable($input)) {
      throw new ParseException(sprintf('Unable to parse "%s" as the file is not readable.', $input));
    }
    $file = $input;
    $input = file_get_contents($file);
  }
  $yaml = new Parser();
  try {
    return $yaml
      ->parse($input, $exceptionOnInvalidType, $objectSupport);
  } catch (ParseException $e) {
    if ($file) {
      $e
        ->setParsedFile($file);
    }
    throw $e;
  }
}