0 follower

Class yii\helpers\Markdown

Inheritanceyii\helpers\Markdown » yii\helpers\BaseMarkdown
Available since version2.0
Source Code https://github.com/yiisoft/yii2/blob/master/framework/helpers/Markdown.php

Markdown provides an ability to transform markdown into HTML.

Basic usage is the following:

$myHtml = Markdown::process($myText); // use original markdown flavor
$myHtml = Markdown::process($myText, 'gfm'); // use github flavored markdown
$myHtml = Markdown::process($myText, 'extra'); // use markdown extra

You can configure multiple flavors using the $flavors property.

For more details please refer to the Markdown library documentation.

Note: The Markdown library works with PHPDoc annotations so if you use it together with PHP opcache make sure it does not strip comments.

Public Properties

Hide inherited properties

Property Type Description Defined By
$defaultFlavor string The markdown flavor to use when none is specified explicitly. yii\helpers\BaseMarkdown
$flavors array A map of markdown flavor names to corresponding parser class configurations. yii\helpers\BaseMarkdown

Public Methods

Hide inherited methods

Method Description Defined By
process() Converts markdown into HTML. yii\helpers\BaseMarkdown
processParagraph() Converts markdown into HTML but only parses inline elements. yii\helpers\BaseMarkdown

Protected Methods

Hide inherited methods

Method Description Defined By
getParser() yii\helpers\BaseMarkdown

Method Details

Hide inherited methods

getParser() protected static method
protected static \cebe\markdown\Parser getParser ( $flavor )
$flavor string|null

The markdown flavor to use. See $flavors for available values. Defaults to $defaultFlavor, if not set.

throws yii\base\InvalidArgumentException

when an undefined flavor is given.

                protected static function getParser($flavor)
{
    if ($flavor === null) {
        $flavor = static::$defaultFlavor;
    }
    /* @var $parser \cebe\markdown\Markdown */
    if (!isset(static::$flavors[$flavor])) {
        throw new InvalidArgumentException("Markdown flavor '$flavor' is not defined.'");
    } elseif (!is_object($config = static::$flavors[$flavor])) {
        static::$flavors[$flavor] = Yii::createObject($config);
    }
    return static::$flavors[$flavor];
}

            
process() public static method

Defined in: yii\helpers\BaseMarkdown::process()

Converts markdown into HTML.

public static string process ( $markdown, $flavor null )
$markdown string

The markdown text to parse

$flavor string|null

The markdown flavor to use. See $flavors for available values. Defaults to $defaultFlavor, if not set.

return string

The parsed HTML output

throws yii\base\InvalidArgumentException

when an undefined flavor is given.

                public static function process($markdown, $flavor = null)
{
    $parser = static::getParser($flavor);
    return $parser->parse($markdown);
}

            
processParagraph() public static method

Defined in: yii\helpers\BaseMarkdown::processParagraph()

Converts markdown into HTML but only parses inline elements.

This can be useful for parsing small comments or description lines.

public static string processParagraph ( $markdown, $flavor null )
$markdown string

The markdown text to parse

$flavor string|null

The markdown flavor to use. See $flavors for available values. Defaults to $defaultFlavor, if not set.

return string

The parsed HTML output

throws yii\base\InvalidArgumentException

when an undefined flavor is given.

                public static function processParagraph($markdown, $flavor = null)
{
    $parser = static::getParser($flavor);
    return $parser->parseParagraph($markdown);
}