从类中访问Markdown PHP函数

时间:2011-12-01 12:50:29

标签: php oop markdown

我正在使用Michel Fortin的Markdown库来制作PHP。设置很简单,效果很好:

include_once "markdown.php";
$my_html = Markdown($my_text);

但是,我有一个课程,我想要传递一些内容和“Markdown'就像这样:

class Test
{
    public function showMarkdown ($text)
    {
        return Markdown($text);
    }
}

显然,我的班级比这要大得多,但这就是它归结为的。在我的主要脚本中,我做了:

include_once "markdown.php";
$test = new Test();
echo $test->showMarkdown($text);

这会返回一个错误,说明功能' Markdown'未定义。这似乎是显而易见的,因为它不在课堂内,我还没有使用范围操作员。但是当我将include放在我的类中并使用$this->Markdownself::Markdown时,该函数仍未定义。我认为Markdown函数不能在另一个函数内定义。

那么,我该如何解决这个问题呢?我需要执行include,它会加载Markdown函数(以及它的其余部分),但我希望能够在我的类中使用它。
感谢您的回答/想法。

2 个答案:

答案 0 :(得分:1)

您的示例代码调用名为Markdown的自由函数(可能在markdown.php中定义)。您只需将include放在与Test类相同的文件中。

执行此操作后,您仍然会将Markdown称为自由函数,而不是实例($this->Markdown)或静态(self::Markdown)方法。

答案 1 :(得分:0)

function showMarkdown ($text)
in place of
public function showMarkdown ($text)

echo $test->showMarkdown("Hello World");