[英]Accessing Markdown PHP function from within a class
我正在使用Michel Fortin的PHP Markdown庫。 設置很簡單,它的工作原理很不錯,如下所示:
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函數不能在另一個函數中定義。
那么,我該如何解決呢? 我需要執行include,它會加載Markdown函數(及其系列的其余部分),但我希望能夠在我的類中使用它。
感謝您的回答/想法。
您的示例代碼調用了一個稱為Markdown
的免費函數(大概在markdown.php
定義)。 您只需要將include包含在與Test
類相同的文件中。
完成此操作后,您仍將Markdown
作為一個自由函數而不是作為實例( $this->Markdown
)或靜態( self::Markdown
)方法來調用。
寫
function showMarkdown ($text)
in place of
public function showMarkdown ($text)
和
echo $test->showMarkdown("Hello World");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.