私はクラスに慣れていないので、これは邪悪なノブの質問です。__autoload()はメインクラスに入っていますか?
JMC
が私のメインクラスです。他のクラスはJMC_files
またはJMC_array
のように名付けられます。私はオートロードを使いたい。オートロード機能が内にありますか?メインクラスまたは外ですか?
class JMC {
function __autoload($className) {
include_once($className.'.php');
}
protected function foo() { }
}
class JMC_files extends JMC(){
}
またはこの:
function __autoload($className) {
include_once($className.'.php');
}
class JMC {
protected function foo() { }
}
class JMC_files extends JMC(){
}
したがって、a)私自身のオートロードメソッドを定義する利点はありますか? b)標準の '__autoload()'マジック関数を使用すると、メインクラス定義ファイルでその関数を宣言するのは意味がありますか? – JakeParis
a)パフォーマンスやメモリの利点はありません。単に組織目的のためです。 b)独自のクラスのautoloadメソッドを使用する場合、 '__autoload()'を定義する必要はありません。 PHPはあなたのクラスメソッドを探し、代わりにそれを実行します。 – BoltClock