# Class yii\helpers\BaseMarkdown

Inheritance | yii\helpers\BaseMarkdown
Subclasses | yii\helpers\Markdown
Available since version | 2.0
Source Code | https://github.com/yiisoft/yii2/blob/master/framework/helpers/BaseMarkdown.php

BaseMarkdown provides concrete implementation for yii\helpers\Markdown.

Do not use BaseMarkdown. Use yii\helpers\Markdown instead.

## 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

## Property Details

Hide inherited properties

$defaultFlavor public static property

The markdown flavor to use when none is specified explicitly. Defaults to `original`.

See also $flavors.

public static string $defaultFlavor = 'original'
$flavors public static property

A map of markdown flavor names to corresponding parser class configurations.

public static array $flavors = [
'original' => [
'class' => 'cebe\markdown\Markdown',
'html5' => true,
],
'gfm' => [
'class' => 'cebe\markdown\GithubMarkdown',
'html5' => true,
],
'gfm-comment' => [
'class' => 'cebe\markdown\GithubMarkdown',
'html5' => true,
'enableNewlines' => true,
],
'extra' => [
'class' => 'cebe\markdown\MarkdownExtra',
'html5' => true,
],
]

## 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.

Source code

                    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

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.

Source code

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

processParagraph() public static method

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.

Source code

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