我应该在哪里发表require_once
个陈述,为什么?
大多数框架都包含在开头,并不关心文件是否真的需要 使用自动加载器是另一种情况。
修改
当然,我们都同意,自动加载器是可行的方法。但那是“其他情况”我不是 问这里(顺便说一句,Zend框架应用程序使用自动加载器,文件仍然很难,并且放在开头)。
我只是想知道,为什么程序员在文件开头包含必需的文件,即使它们可能根本不会被使用(例如 Exception files )。
答案 0 :(得分:5)
自动加载是一种更好的做法,因为它只会加载所需的内容。显然,您还需要包含定义__autoload
函数的文件,这样您就可以在某个地方使用。
我通常有一个名为“includes.php”的文件,然后定义__autoload
并包含所有非类文件(例如函数库,配置文件等)。该文件在每页开头加载。
答案 1 :(得分:3)
我会说3.这取决于。如果您正在处理大量代码,那么仅在请求时加载包含文件可能是值得的,因为加载代码需要时间,并且会占用内存。另一方面,这使得维护变得更加困难,特别是如果您有依赖关系。如果加载包含“按需”,则可能需要使用包装函数,以便跟踪加载到哪个模块的位置。
我认为自动加载器机制确实是可行的方法 - 当然,应用程序的设计需要严格面向对象才能实现。