1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
---
layout: default
title: GitHub-Flavored Markdown
description: The GithubFlavoredMarkdownExtension class includes all the GFM addons
---
# GitHub-Flavored Markdown
You can manually add the GFM extension to your environment like this:
```php
use League\CommonMark\Environment\Environment;
use League\CommonMark\Extension\CommonMark\CommonMarkCoreExtension;
use League\CommonMark\Extension\GithubFlavoredMarkdownExtension;
use League\CommonMark\MarkdownConverter;
// Define your configuration, if needed
$config = [];
// Configure the Environment with all the CommonMark and GFM parsers/renderers
$environment = new Environment($config);
$environment->addExtension(new CommonMarkCoreExtension());
$environment->addExtension(new GithubFlavoredMarkdownExtension());
$converter = new MarkdownConverter($environment);
echo $converter->convertToHtml('Hello GFM!');
```
This will automatically include all of these sub-extensions/features for you:
- [Autolinks](/2.0/extensions/autolinks/)
- [Disallowed Raw HTML](/2.0/extensions/disallowed-raw-html/)
- [Strikethrough](/2.0/extensions/strikethrough/)
- [Tables](/2.0/extensions/tables/)
- [Task Lists](/2.0/extensions/task-lists/)
Or, if you only want a subset of GFM extensions, you can add them individually like this instead:
```php
use League\CommonMark\Environment\Environment;
use League\CommonMark\Extension\Autolink\AutolinkExtension;
use League\CommonMark\Extension\CommonMark\CommonMarkCoreExtension;
use League\CommonMark\Extension\DisallowedRawHtml\DisallowedRawHtmlExtension;
use League\CommonMark\Extension\Strikethrough\StrikethroughExtension;
use League\CommonMark\Extension\Table\TableExtension;
use League\CommonMark\Extension\TaskList\TaskListExtension;
use League\CommonMark\MarkdownConverter;
// Define your configuration, if needed
$config = [];
// Configure the Environment with all the CommonMark parsers/renderers
$environment = new Environment($config);
$environment->addExtension(new CommonMarkCoreExtension());
// Remove any of the lines below if you don't want a particular feature
$environment->addExtension(new AutolinkExtension());
$environment->addExtension(new DisallowedRawHtmlExtension());
$environment->addExtension(new StrikethroughExtension());
$environment->addExtension(new TableExtension());
$environment->addExtension(new TaskListExtension());
$converter = new MarkdownConverter($environment);
echo $converter->convertToHtml('Hello GFM!');
```
This extension relies on the `CommonMarkCoreExtension` being enabled, so [don't forget to include that](/2.0/extensions/commonmark/) too.
|