0
我試圖得到這個工作,但它不斷給我一個錯誤約$此爲行對象上下文不是:
echo $this->db->query("SELECT * FROM enquiries") ;
在哪裏我錯了嗎? :(
class CoreModel {
protected $db ;
function __construct()
{
try{
$this->db = new PDO("mysql:host=localhost;dbname=database", "user", "pass") ;
$this->db->exec('set names utf8') ;
$this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$this->db->setAttribute(PDO::ATTR_PERSISTENT, TRUE) ;
}
catch(PDOEXCEPTION $e)
{
echo $db->errorCode ;
die() ;
}
}
function test()
{
echo $this->db->query("SELECT * FROM enquiries") ;
}
function __destruct()
{
$this->db = NULL ;
}
}
echo CoreModel::test() ;
謝謝,我知道我失去了一些東西明顯!
它會是網卡:靜態
使用
new
運營商創建一個實例。 e如果PHP不允許你靜態調用非靜態方法。如果你幸運的話,它只能工作,這是設計一種語言的方法。我正在談論PHP,所以我不知道爲什麼我期望有不同的東西...... – siride@siride - 如果PHP做了很多其他語言所做的事情,那麼它會很好,但它不會是PHP。 –
@MystereMan不是所有的語言都是一樣的,但有一些核心概念和實踐應該共享,如果不共享,應該有一個很好的理由。 – siride