让每个类自动加载是否明智


is it wise to make every class loaded automatically

我正在编写一个MVC,我需要建议,使用spl_autoload_register自动加载每个类(包括控制器,模型,核心类)是否明智,否则可能会出现问题或性能降低。

这可能取决于许多因素,但我使用了自动加载每个类的框架(从一个看起来很广的地方的相对较大的 autload 函数)以及许多嵌套包含。 我从来没有注意到像这样的自动加载的性能问题。 它使事情变得更加简单,因为您也不必担心包含冲突。

不过,正如我所说,这可能取决于。 由您来测试哪种方法通过基准测试更快。 如果您在实现方面有较慢的首选方法,则必须决定速度差异是否足以使用较差但更快的实现。

在大多数情况下 - 是的,是的。按照您的猜测手动加载类会提高性能,但只有在您拥有由大量文件(例如 PHPExcel)组成的库的情况下,性能才会提高一点,但即使在这种情况下,使用自动加载也更可取。

总的来说:在大多数情况下(特别是对于传统站点),手动加载是微优化。

处理此功能的最佳方法 - 如果性能似乎下降了问题,请启动基准测试。基准测试是最好的方法,因为一切都取决于架构框架