2011-01-22 12 views
3

私はPHPの__autoload関数に遭遇しました。これをMVCフォルダ構造で使用したいと考えています。あなたは多分その非常に近いZendのフレームワークやI -as他のフレームワークに基づいてを認識したようPHPオートロードMVC

-application 
--controller 
--models 
---entities 
----house 
---factories 
----houseFactory 
--views 
-library 
-public 

:itsselfはかなり簡単ですが、どのように私は命名のいくつかの種類の後にダイナミックフォルダのスキャンを達成しない機能は、例を参照してください。それらから来ていますが、私はフレームワークなしでWebサイトを開発して、bootsrapファイルを書き始めました。

多分、私が思うに、これは、私が思うに、自動ロードを手伝ってくれる人かもしれません。魔女は、フォルダ構造に適用することができ

Model_Entities_House または Model_Factory_HouseFactoryよう

私のクラス名になります。

+0

パスを見つけるために文字列を解析するのではなく、ファイルが存在するかどうかを確認するために、すべてのフォルダを循環すると考えましたか? – dqhendricks

答えて

4

私は主にSPL autoload functionを使用しています。これは、これを非常に簡単に行うのに役立ちます。それはこのようなものでなければなりません。そして、

spl_autoload_register("MyClass::Autoloader"); 

、あなたはyou'reは、命名規則を使用している場合は、あなただけで、必要なファイルをロードするために利用可能であるべきである。この

class MyClass 
{ 
    public static function Autoloader($className) 
    { 
    //parse $className and decide where to load from... 
    } 
} 

ような何かを行うことができます名前を使って

+0

+1 spl_autoload_registerの使用 – philwinkle

+0

+1は、とてもプロフェッショナルに見えますが、まったく新しいクラスを作成すると「あまりにも多くの」気持ちが残ります。とにかく、それはおそらく行く方法です。 – Sliq

関連する問題