为什么包括什么时候你需要PHP?

loc*_*boy 45 php

如果您经常使用或替代(因为它们通常非常重要),尝试使用PHP includeinclude_once库中的库有什么意义?requirerequire_once

jop*_*pke 46

有时,您要包含您无法控制的库中的文件,或者您的代码在不同的环境中运行.

其中一些实际上可能不是您的脚本所必需的,而是辅助文件或附加内容.

例如,如果您的PHP生成HTML,您可以使用include来添加横幅.但是如果由于某种原因缺少横幅文件,您不希望文件停止.你想要优雅地失败.


Asa*_*aph 31

include/ include_oncerequire/ 之间的区别在于require_once,当找不到文件时,前者触发警告而后者触发错误.意见可能会有所不同,但IMO,如果由于某种原因不存在或可读所需的文件,这代表一个非常破碎的情况,我宁愿看到错误并停止执行,而不是在明确破坏的上下文中发出警告并继续执行.所以我认为最好的做法是require/ 使用/ require_once排除include/ include_once完全避免.

  • 这也是我的直觉,但只是寻找我应该使用`include` /`include_once`的任何角落案例. (2认同)
  • 你有这方面的最佳实践参考吗?如果这是真的,这是一个很好的答案. (2认同)

sou*_*php 7

include - 这会尝试加载文件,但如果失败则不会暂停执行

include_once - 与'include'相同但运行额外检查以确保该文件尚未包含在当前脚本中

require - 这会尝试加载文件并在失败时抛出致命错误

require_once - 与'require'相同,但运行额外的检查以确保它只加载一次

如果您不需要使用include_once或require_once尝试避免它们,因为额外的检查会增加一点开销.

编辑:我应该补充一点,他们的关键区别是在编译器级别要求失败,而包含在运行时抛出错误.