私はstackoverflowの周りを見て、私はまだ私の質問への答えを見つけることができません。必要なファイルのみ、またはすべてのフレームワークをロードしていますか?
私は自分のカスタムフレームワークをウェブサイトに使用しています。現在、私のインデックスにはフレームワークが使用するすべてのクラスを読み込むためのインクルードを使用しています。
私のデータベースオブジェクトでは、テーブルごとにクラスのレイヤーがたくさんあるので、私はすべてのファイルを含めるために少しスクリプトを使用します。 (各テーブルには少なくとも4つのファイルがあります)
ここに私が現在読み込んでいるスニペットがあります。
// the constants are the directories to look for files
$__dirs = array(CORE_PATH,CX_SETTINGS,BASE_MODEL,MODEL,CUSTOM_MODEL,CONTROLLER,PLUG_IN,HELPER_FUNCTIONS);
$__accepted_ext = '.php';
foreach ($__dirs as $dir) {
if ($handle = opendir($dir)) {
// peer files first
while (false !== ($file = readdir($handle))) {
if ((strpos($file,$__accepted_ext) !== false)){
require_once($dir.DS.$file);
//echo "$dir : $file : works \n"; // debug
}
}
closedir($handle);
}
}
この方法は、私が提供するすべてのディレクトリをスキャンし、すべての私のPHPファイルを含みます。
私の問題は、私が使用しているかどうかにかかわらず、このフレームワークのすべてのファイルをロードすることです。だから私はこれを処理するための最良の方法ではないと仮定し、私は不必要なオーバーヘッドを作成する可能性があります。
今、私は__autoload()関数について読んで、私はそれを私の代わりと考えています。しかし、これは何か私は(私も使用しないファイルも含めて)心配する必要がありますか?この問題を処理するために現在使用されている方法は何ですか?
EDIT:
注:含ますべてのファイルが、クラスではなく、誤って含まれるファイルです。 例:すべてのマイページで有効ではありませんが、コメントクラスを読み込むことがあります。何らかの方法で不要です