php:有很好的理由引用所有数组键/索引吗?

Kzq*_*qai 2 php syntax

我正在运行别人的代码,他们经常避免逃避他们的数组键.

例如:

$ row_rsCatalogsItems [名]

代替

$ row_rsCatalogsItems [ '名称']

所以我经常对我触摸的所有东西进行微小的改动,以应对那种懒惰.但现在我想知道这样做是否有很多好处.我拿到它会默认为一个字符串之前检查常数(我讨厌在PHP行为与常量打交道时,因为它们验证为真,即使没有定义),但我不知道,甚至是值得的麻烦的更改所有常量 - 数组键的许多实例.

建议?

Jon*_*Jon 9

有很多好理由.

error_reporting(E_ALL);
Run Code Online (Sandbox Code Playgroud)

在脚本的开头,您将立即看到所有原因.

除此之外,在实践中你可能会认为,这是我可能会逃避的事情.你可能是对的.但作为一名开发人员,你必须在某个地方划清界限,了解什么是可接受的黑客,以及辱骂的原因是什么.对我来说,这种特殊行为超出了这一范围.

这很糟糕的直接原因是它error_reporting(E_ALL)无法使用.良好的开发实践要求报告所有错误,这些通知正在为更加繁琐的代码和更难的调试会话做好准备.

更新:我没有解决现有情况的实际解决方案的问题,所以这就是我要做的事情:

  1. 找到负责人并确保他们永远不会以任何必要的方式再次这样做.
  2. 运行有问题的脚本并从日志文件中获取有关未定义常量的所有通知.
  3. 使用正则表达式搜索并从编辑器中替换,尝试替换\[(a-zA-Z_-)\]['$1'](或类似的东西).如果替换次数等于日志文件中的通知数,那么您就是金色的.否则,尝试分而治之,直到你看到正则表达式失败的地方.
  4. 根据需要重复所有其他脚本.