YamlInline::parseQuotedScalar PHP Method

parseQuotedScalar() protected static method

Parses quotes scalar
protected static parseQuotedScalar ( string $scalar, integer &$i ) : string
$scalar string
$i integer
return string YAML
    protected static function parseQuotedScalar($scalar, &$i)
    {
        $delimiter = $scalar[$i];
        ++$i;
        $buffer = '';
        $len = strlen($scalar);
        $escaped = '"' == $delimiter ? '\\"' : "''";
        while ($i < $len) {
            if (isset($scalar[$i + 1]) && $escaped == $scalar[$i] . $scalar[$i + 1]) {
                $buffer .= $delimiter;
                ++$i;
            } else {
                if ($delimiter == $scalar[$i]) {
                    break;
                } else {
                    $buffer .= $scalar[$i];
                }
            }
            ++$i;
        }
        if ('"' == $delimiter) {
            // evaluate the string
            $buffer = str_replace('\\n', "\n", $buffer);
        }
        return $buffer;
    }