FrontYAML Save

YAML Front matter parser

Project README

FrontYAML

An implementation of YAML Front matter for PHP. It can parse both YAML and Markdown.

Total Downloads

Installation

Require the project with Composer:

composer require mnapoli/front-yaml

Usage

$parser = new Mni\FrontYAML\Parser;

$document = $parser->parse($str);

$yaml = $document->getYAML();
$html = $document->getContent();

If you don't want the Markdown to be parsed (maybe because it is not Markdown):

$document = $parser->parse($str, false);

Example

The following file:

---
foo: bar
---
This is **strong**.

Will give:

var_export($document->getYAML());
// array("foo" => "bar")

var_export($document->getContent());
// "<p>This is <strong>strong</strong></p>"

YAML and Markdown parsers

$parser = new Mni\FrontYAML\Parser($yamlParser, $markdownParser);

This library uses dependency injection and abstraction to allow you to provide your own YAML or Markdown parser.

interface YAMLParser
{
    public function parse($yaml);
}

FrontYAML uses by default Symfony's YAML parser.

interface MarkdownParser
{
    public function parse($markdown);
}

FrontYAML uses by default the League CommonMark parser.

Open Source Agenda is not affiliated with "FrontYAML" Project. README Source: mnapoli/FrontYAML
Stars
283
Open Issues
0
Last Commit
3 months ago
Repository

Open Source Agenda Badge

Open Source Agenda Rating