函数调用函数抛出未定义的函数错误

时间:2010-07-22 21:28:35

标签: php function class oop undefined

使用面向对象的方法,我试图在同一个类的函数中调用一个公共函数,但它会抛出一个错误:Call to undefined function h()

PHP:

class Name {
    . .. .
    public function h($s) 
    {
    echo htmlspecialchars($s, ENT_QUOTES);
     }

    public function formatQuotes($row)
    {

    return "<p id=\"ab_quotes\">" . h($row['cQuotes']) . "</p>"
    . "<p id=\"ab_author\">" . h($row['vAuthor']) . "</p>";             
    }

}

我在这里缺少什么?

2 个答案:

答案 0 :(得分:4)

您需要使用$this->在同一个类中调用方法。它并不像在C ++等语言中那样隐含

所以,打电话给h

$this->h($row['cQuotes']);

答案 1 :(得分:3)

您必须使用它来访问其中任何类的非静态成员

{
    return "<p id=\"ab_quotes\">" . $this->h($row['cQuotes']) . 
           "</p>". "<p id=\"ab_author\">" . $this->h($row['vAuthor']) . 
           "</p>";             
}