2012-07-10 31 views
-2

在這份聲明由笨PHP會發生什麼用 - >

$this->db->select('') 

難道我們說,

從目前的模型對象,找到一個名爲「DB」的對象,然後運行「DB」的功能稱爲select?

由於

+1

[面向對象程序設計](http://us3.php.net/manual/en/language.oop5.php) – 2012-07-10 22:09:51

+0

OOPS !!!!!!!!!!!!!!!! – Vinit 2012-07-10 22:10:17

+0

可能的重複[參考 - 這是什麼符號在PHP中的意思?](http://stackoverflow.com/questions/3737139/reference-what-does-this-symbol-mean-in-php) – 2012-07-10 22:10:20

回答

2

$this是對當前對象的引用。
db是無論對象$this代表的屬性。
select()db對象的一種方法。

在面向對象的上下文中使用->來訪問對象的方法和屬性。

編輯
要回答在評論你的問題,我們需要澄清所使用的術語。 一個類有methods(函數)和properties(變量)。

在這種情況下,db是一個對象(因爲它有一個select方法,所以可以說)。但在$this代表的對象的上下文中,它是對象的property

+0

所以我是對的在思考db是$ this對象的一個​​對象。我明白$ this-> myMethod();在這裏通過第三級調用對象內的方法 - $ this-> db-> select('') - – 2012-07-10 22:25:10

+0

請參閱我的編輯 – 2012-07-10 22:38:27

0

$this->db->select('mytable')

會導致follwing MySQL查詢:

'SELECT * FROM mytable' 

Here是爲CodeIgniter的活動記錄文檔的鏈接。