【发布时间】:2011-07-29 11:20:56
【问题描述】:
背景:我们经常使用 PHP(Zend 框架)开发并托管在 linux 服务器上的 web 应用程序。编程团队可能由使用 Linux 或 Windows 作为本地开发平台的个人组成。
因为 Zend 模型名称被映射到文件名,所以大小写很重要。 程序员可能会写 $this->something,其中“something”是一个模型,它在 linux 服务器上具有“Something.php”的文件名。
他的代码可以在他的 Windows 开发 PC 上正常运行,因为“something”将正确映射到 Windows 上的“Something.php”。但是当上传到 linux 服务器时,代码会中断,因为文件名在 Linux 上是区分大小写的。他应该把代码写成“$this->Something”。
最后我的问题是,如果系统检测到代码中模型名称的大小写与文件系统中实际文件名的大小写不匹配,是否存在即使在 Windows 中也会产生错误的 Zend Framework 配置?
【问题讨论】:
-
重新标记。 Zend != Zend 框架。
-
底线是,没有,坚持命名约定!
-
@markus - 我们确实使用命名约定。当程序员打错字(输入小写而不是大写)时,问题就会出现,它仍然可以在 Windows 上静默工作,然后在 Linux 上失败。最好能检测到这一点。
-
@royappa:是的,我们的团队在 Windows 上工作,我们对此没有任何问题。如果您使用支持 Zend Framework 的 IDE,您实际上并没有太多机会打错字……我希望您有一个与 live 相同的登台环境。如果你能发现那里的罕见病例,这还不够吗?
-
@markus:这种情况很少发生(与任何其他类型的错字一样罕见)。是的,我们有一个暂存环境,在该环境中进行了测试,并且在上线之前首先对其进行了测试。我只是希望有一个简单的标志或选项来完全避免这个问题,就像有许多标志用于各种类型的错误检查一样。不过感谢您的好建议。
标签: php zend-framework frameworks