【问题标题】:PHP Code Sniffer explanation of rule PEAR.Files.IncludingFile.UseRequireOncePHP Code Sniffer 规则 PEAR.Files.IncludingFile.UseRequireOnce 解释
【发布时间】:2016-08-10 14:16:09
【问题描述】:

我正在尝试改进我的编码风格,所以我开始使用 PHP Code Sniffer 来遵循标准。我对这条规则“PEAR.Files.IncludingFile.UseRequireOnce”感到困惑 include_once 有什么问题?禁止这种嗅探是否严重违反标准?

感谢您的回答和建议。

【问题讨论】:

    标签: php phpcs


    【解决方案1】:

    没有“正确”的答案,它是你想要的编码标准。

    就个人而言,我会使用将“require_once”标记为不正确的规则,因为它与 include_once 完全相同,没有机会检查结果是否有错误。由于找不到类而导致的致命错误或由于 require_once 失败而导致的致命错误都没有机会在 PHP 中正常恢复。

    【讨论】:

      【解决方案2】:

      引用another answer

      所以我更喜欢require_once,因为我知道文件何时丢失。如果文件加载是可选的,您也可以使用file_exists() 来控制它。

      【讨论】:

      • 我认为这取决于情况。我更喜欢包含,因为它不是致命的。无论如何,问题是关于违反 PEAR 编码标准的。我现在相信这条规则是存在的,因为在完美的世界中,一切都完美无缺,所以我们的要求/包含不会失败。当它确实需要强制您修复它而不是包含时,它会更加严格:-) :-)
      • 我的最后一点也不是致命的:)。在代码中使用file_exists() 扭曲require_once 可以防止这样的问题,因为知识体现在代码中,而不是在stackoverflow 档案中。顺便说一句,只是想知道。你开始使用 CodeSniffer 和 PHP-CS-Fixer 了吗?
      • 只是 CodeSniffer,它是持续集成 (CI) 过程的一部分,即使对于 phpcs 只是 CI 中的一项工作的小型项目:-D 不知何故修复程序不适合我,因为它无法修复所有错误并发出警告:-D。
      • 你可能很好:D我两个都用,我很懒:github.com/Symplify/EasyCodingStandard/blob/master/…
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-19
      • 1970-01-01
      • 2016-09-13
      • 2010-12-22
      • 2010-09-15
      • 2020-10-20
      相关资源
      最近更新 更多