我正在以模块化方式编写应用程序,因此我可能会重用一些组件。我还编写了在不同组件之间共享的实用程序函数。例如,如果我有类 A(在 A.php 中)、B(在 B.php 中)和 C(在 C.php 中)和一个函数 f(在 utils.php 中),并且这个函数在两者中都使用A、B、C,如何组织代码?
出于测试目的,我分别运行 A.php、B.php 和 C.php,因此我需要在所有这些文件中包含 utils.php。在所有三个文件中执行 require_once 'utils.php' 是一个好的解决方案吗?我听说使用 require_once 可能会有一个小的性能问题。或者我是否应该编写一个单独的“test.php”,我将在其中导入我需要的所有文件,并使用该代码进行测试而不是在实际类文件中编写测试?
最佳答案
首先,require_once
对于运行测试来说肯定不会“太”慢。请记住,过早的优化是万恶之源。是的,它有一些开销,但除非它导致错误或减慢您的生产环境,否则不要打扰。测量,测量测量。
我倾向于使用的一个好策略类似于 Zend Framework。
我的类名基于我的目录结构。例如,名为 Http_Client_Curl 的类将位于以下目录中:
Http/Client/Curl.php
这样的结构,使用起来非常简单方便auto loading .参见 spl_autoload_register .这意味着您可以让 PHP 根据非常简单的约定自动包含您需要的所有文件和类。
关于php - 如何组织PHP代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4421816/