差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

次のリビジョン
前のリビジョン
programming:php:autoload:start [2011/07/07 08:04]
yuki 作成
programming:php:autoload:start [2021/05/22 17:58]
yuki 削除
ライン 9: ライン 9:
       * 最終的な出力に必要ないクラスまで読み込むとかいらなくない?       * 最終的な出力に必要ないクラスまで読み込むとかいらなくない?
       * 後からクラス追加したらまたここに書くの?       * 後からクラス追加したらまたここに書くの?
-      * プラグインを他の人が作ったら、rewuire_onceする行まで書かなきゃいけないの?+      * プラグインを他の人が作ったら、require_onceする行まで書かなきゃいけないの?
     - requireで書く。     - requireで書く。
       * どうせ "PHP Fatal error: ​ Cannot redeclare class" を頻発する。       * どうせ "PHP Fatal error: ​ Cannot redeclare class" を頻発する。
ライン 16: ライン 16:
     - そうだね、autoload使おうね。     - そうだね、autoload使おうね。
  
-  * __autoloadを実装すると +  * autoloadを実装すると 
-    - $class = new Class;​すると、クラス名を引数に__autoloadが呼ばれる。+    - $class = new Class;​すると、クラス名を引数にautoloadが呼ばれる。
     - じゃあ引数に合わせてクラス定義のあるファイルをrequireすればいいよね。     - じゃあ引数に合わせてクラス定義のあるファイルをrequireすればいいよね。
     - というコードを書く。     - というコードを書く。
ライン 26: ライン 26:
   * メモ。   * メモ。
     * <​code>​class CoreAutoload {     * <​code>​class CoreAutoload {
- 
     public static function autoload( $class ) {     public static function autoload( $class ) {
         //class already exists, return true;         //class already exists, return true;
ライン 44: ライン 43:
         }         }
     }     }
- +
-}</​code>​+if(function_exists('​__autoload'​)){ 
 +    spl_autoload_register('​__autoload'​);​ 
 +} 
 +spl_autoload_register( array('​CoreAutoload',​ '​autoload'​) ); 
 +</​code>​
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0