2009-06-16 14 views
1

可能性の重複:
PHP: self vs. $this意味> CakePHPの中

$this->は、CakePHPで何を意味するのでしょうか?

これを2つの部分で回答してください... $thisとは何ですか? ->は何を参照していますか?

誰かが$ this-> Post-> find( 'all')というステートメントによって明示的に各部分を説明することができます。ポストコントローラーで。 Postsコントローラにある場合、なぜ> Post部分が必要なのですか?

+0

ここでは良い答えだ:それはまた、あなたの$この違いを伝える [リンクテキスト](http://stackoverflow.com/questions/151969/php-self-vs-this)自己 – sqram

答えて

4

$これは、使用するクラスを指します。たとえば、$ this-> Post-> find( 'all')が表示されている場合、AppModelを継承するPostクラスにアクセスしようとしています。表記モデルを使用すると、データベースのpostsテーブルが使用されます。 AppModelはfind()メソッドを持ち、PostモデルはAppModelを継承しているため、$ this-> Post-> find( 'all')が使用されます。

http://api.cakephp.org/class/app-model http://book.cakephp.org/view/22/CakePHP-Conventions

+0

リンクは現在失効しています... – JackXu

0

すべてのクラス定義はクラス 名が続き、 キーワードクラスで始まり、これPHPの予約語ではない任意の名前にすることができます。 の中括弧が続き、 のクラスメンバーの定義 とメソッドが含まれています。擬似変数$ this は、メソッドがオブジェクトコンテキスト内から と呼ばれる場合に使用できます。 $この を呼び出すオブジェクト への参照である( メソッドが属する通常オブジェクトが、メソッドが 二次オブジェクトのコンテキストから静的 呼び出された場合、別の 対象とすることができます)。

最も簡単な定義ではありませんが、実際にはCakePHPのコードをナビゲートするために知っておくべきことです。