ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと

あるコントローラーで以下の文がファイルの先頭に記述されいるかと思います。

App::uses('AppController', 'Controller');

インクルードしているかと思われますが、この記述でなぜ呼び出せるのか

文法が理解できません。

これは具体的に何をしているのでしょうか?また、なぜこのような文法で呼び出せるのでしょうか?

ご存じの方、宜しくお願いします。

A 回答 (2件)

cakephp2 は、php5 のクラスで構成されているので、まずは、phpにおけるクラス記述の文法をしっかり覚えること


http://jp.php.net/manual/ja/language.oop5.paamay …

あと、cakephp内の lib/cake/Core/App.php の useやloadメソッドを読む
    • good
    • 0

Appクラスに存在する静的なusesメソッドを呼び出しているだけです。



静的なメソッドの場合は「::」(スコープ定義演算子)を使います。
動的なメソッドの場合は「->」(アロー演算子)を使います。


サンプル

Class SampleClass {

private $str;

public function __construct($str) {
$this->str = $str;
}

public static function TestStatic($str) {
echo $str.PHP_EOL;
}

public function TestDynamic($str) {
echo $str.$this->str.PHP_EOL;
}

}


SampleClass::TestStatic('A'); //「A」と表示されます

$sc = new SampleClass('B');
$sc->TestDynamic('C'); //「CB」と表示されます
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!