Я использую библиотеку Markdown для PHP от Michel Fortin. Установка проста и отлично работает следующим образом:
include_once "markdown.php";
$my_html = Markdown($my_text);
Однако у меня есть класс, в котором я хочу передать материал и пометить его, например, так:
class Test
{
public function showMarkdown ($text)
{
return Markdown($text);
}
}
Очевидно, мой класс намного больше, чем этот, но это то, к чему он сводится. В моем основном сценарии я делаю:
include_once "markdown.php";
$test = new Test();
echo $test->showMarkdown($text);
Это возвращает ошибку, говоря, что функция 'Markdown' не определена. Это кажется очевидным, потому что это не внутри класса, и я не использовал оператор области видимости. Но когда я помещаю include в свой класс и использую $this->Markdown
или self::Markdown
, функция все еще не определена. Я понял, что функция Markdown не может быть определена внутри другой функции.
Так, как я могу решить это? Мне нужно выполнить включение, которое загружает функцию Markdown (и остальную часть ее семейства), но я хочу использовать ее в своих классах.
Спасибо за ваши ответы / идеи.