我每天使用两台应用服务器:一台开发,一台生产。来自不同开发人员的各种应用程序都存在于这些盒子上,以及一些通过 cron 运行的脚本。目前,我正在使用 -D
flag到 httpd 以便我可以在代码中识别我的生产服务器,即。 isset($_SERVER['DEV'])
。不幸的是,这不适用于从命令行运行的脚本,因为它们不在 Apache 保护伞下。
基本上,我想要一种清晰、简单的方法来识别每一行代码都可以使用的开发与生产。
我排除的:
auto_prepend_file
-- 我们已经在一些应用程序中使用了这个指令,你不能有多个 autoprepend。
我目前正在探索的内容:
- 自定义扩展——我确信创建一个只定义一个新常量(可能受 ini 设置影响)的新扩展不会是世界上最难的事情,但我之前在这方面没有经验。
那么,有什么技巧可以识别开发/产品而不涉及将代码注入(inject)每个脚本或应用程序吗?
最佳答案
使用环境变量
只需设置一个环境变量。它适用于 Windows 和 linux,现在它们甚至被称为同一个东西。然后只需检查 $_ENV["DEVVSPROD"]
关于php - 在 PHP 中识别开发服务器与生产服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1412557/