- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在开发一个具有相当大的 PHP 代码库的新项目。该应用程序使用了相当多的 PHP 常量 ( define('FOO', 'bar')
),尤其是数据库连接参数之类的东西。这些常量都在一个配置文件中定义,该配置文件基本上由应用程序中的每个类直接require_once()
。
几年前,这完全有道理,但从那时起,我就遇到了单元测试错误,类之间的这种紧密耦合确实困扰着我。这些常量闻起来像全局变量,并且在整个应用程序代码中直接引用它们。
这还是个好主意吗?将这些值复制到一个对象中并使用该对象(即 Bean - 在那里,我说过)通过依赖注入(inject)将它们传递给与数据库交互的类是否合理?我这样做是否会破坏 PHP 常量的任何好处(比如速度或其他)?
我正在考虑的另一种方法是创建一个单独的配置 PHP 脚本用于测试。我仍然需要想办法让被测类使用沙箱配置脚本而不是全局配置脚本。这仍然感觉很脆弱,但它可能需要对整个应用程序进行更少的彻底修改。
最佳答案
在我看来,常量应该只在两种情况下使用:
SECONDS_PER_HOUR
)。即便如此,我也会重新考虑类常量是否更合适,以免污染常量空间。
在您的情况下,我认为常量不是一个好的解决方案,因为您会希望根据它们的使用位置提供替代值。
关于php - PHP 全局常量是一种良好的现代开发实践吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6736330/
嗨,我正在考虑开发一种文件传输程序,想知道我是否想要尽可能好的加密,我应该使用什么? 我会用 C# 开发它,所以我可以访问 .net 库 :P在我的 usb 上有一个证书来访问服务器是没有问题的,如果
我创建的这个计算两个数组的交集是线性的方法的复杂度(在良好、平均、最差的情况下)? O(n) public void getInt(int[] a,int[] b){ int i=0; int
我已经能够使用 RTCPeerConnection.getStats() API 获得 WebRTC 音频调用的各种统计信息(抖动、RTT、丢包等)。 我需要将整体通话质量评为优秀、良好、一般或差。
基本问题: 如果我正在讲述/修改数据,我应该通过索引硬编码索引访问文件的元素,即 targetFile.getElement(5);通过硬编码标识符(内部翻译成索引),即 target.getElem
在 Linux 上,我想知道要调用什么“C”API 来获取每个 CPU 的统计信息。 我知道并且可以从我的应用程序中读取 /proc/loadavg,但这是系统范围的负载平均值,而不是每个 CPU 的
在客户端浏览器中使用 fetch api,GET 或 POST 没有问题,但 fetch 和 DELETE 有问题。它似乎将 DELETE 请求方法更改为 OPTIONS。 大多数研究表明是一个cor
我是一名优秀的程序员,十分优秀!