以下のautoloadコンストラクトでわかるように、アプリケーションを実行するためにいくつかの からも'spl_autoload_register'呼び出しています。index.classeslazyfunctionsauto-loaded classes
私のプロジェクトの範囲では、たとえば$this->function別functionの an内で参照することはできませんauto-loaded class。おそらく、このようにインスタンス化される方法を理解していない可能性があります。
手続き型および OOP 構造を許可するプロジェクトの最も効率的な方法が欲しいのですが、lol を使用するのが本当に好きです。自動ローダーによってロードされたクラス内でそれを$thisどのように使用し、効率的に使用できるでしょうか。編集しますか? $thisinit() はおそらく許可し$thisますか?
私の無知がプロジェクトを作成し、コーディング構造を最新のものにしていないことを許してください。
無愛想self::でもあるべきstatic::ですか?
クラス -> オートロード -> インデックス
class autoloader {
public static $loader;
public static function init()
{
if(self::$loader == NULL) {
self::$loader = new self();
}
return self::$loader;
}
public function __construct() {
spl_autoload_register(array(this, 'library'));
request::request();
template::render();
}
public function library($class)
{
set_include_path(get_include_path() . PATH_SEPARATOR . '/lib');
spl_autoload_extensions('.class.php');
spl_autoload($class);
}
}