Esempio n. 1
0
 /**
  * Parses a quoted scalar to YAML.
  *
  * @param string  $scalar
  * @param integer $i
  *
  * @return string A YAML string
  *
  * @throws ParserException When malformed inline YAML string is parsed
  */
 private static function parseQuotedScalar($scalar, &$i)
 {
     if (!preg_match('/' . self::REGEX_QUOTED_STRING . '/Au', substr($scalar, $i), $match)) {
         throw new ParserException(sprintf('Malformed inline YAML string (%s).', substr($scalar, $i)));
     }
     $output = substr($match[0], 1, strlen($match[0]) - 2);
     $unescaper = new Unescaper();
     if ('"' == $scalar[$i]) {
         $output = $unescaper->unescapeDoubleQuotedString($output);
     } else {
         $output = $unescaper->unescapeSingleQuotedString($output);
     }
     $i += strlen($match[0]);
     return $output;
 }
Esempio n. 2
0
 public function __construct($value, $quote = '')
 {
     $this->value = Unescaper::unescape($value);
     $this->quote = $quote;
 }