PHP自动加载MVC

Ric*_*ard 3 php autoload

我在PHP中遇到了__autoload函数,并希望将它与我的MVC文件夹结构一起使用.功能本身很简单,但是如何在某种命名之后实现动态文件夹扫描,请参阅示例:

-application
--controller
--models
---entities
----house
---factories
----houseFactory
--views
-library
-public
Run Code Online (Sandbox Code Playgroud)

正如您可能认识到它非常接近基于zend框架或其他框架 - 我来自那些,但是我想开发一个没有框架的网站,并且刚开始编写bootsrap文件.

也许sombody可以帮助我自动加载 - 我认为 - 高级用法.

我的类名将类似于Model_Entities_House或Model_Factory_HouseFactory

女巫可以应用于文件夹结构.

Dav*_*nde 5

我主要做的是使用SPL自动加载功能,这将帮助您轻松完成此任务.它应该是这样的:

spl_autoload_register("MyClass::Autoloader");
Run Code Online (Sandbox Code Playgroud)

然后,你可以做这样的事情

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

如果您使用命名约定,那么您应该只使用名称加载所需的文件.