2011-09-22 67 views
0

我有一個擴展mysqli_result類的問題。PHP擴展mysqli_result

我想用自定義類擴展mysqli_result類。 這裏是我的代碼:

class mysqli_result_extended extends mysqli_result { 

    public function GetJSON() { 
    blah blah... 
    return $json; 
    }  
} 

$db = new mysqli('localhost','root','*****','somedb'); 

$sql = 'SELECT * FROM students'; 

$result = $db->query($sql); 

$result->getJSON(); //This is causing the trouble 

當我運行上面的代碼,它給出了一個錯誤:

Call to undefined method mysqli_result::getJSON() in ****.php on line ** 

有什麼不對的代碼?

回答

1

由於$db->query($sql)返回mysqli_result類型的變量而不是mysqli_result_extended,您會收到錯誤消息。 mysqli_result類沒有名爲getJSON的方法。

所以,當你定義一個類B擴展A類,它並不意味着基類A的所有實例都奇蹟般地成爲B類。