Php 为什么include_once()比include()更安全?
将外部文件包括到我的站点,大多数情况下,我使用Include()。Php 为什么include_once()比include()更安全?,php,Php,将外部文件包括到我的站点,大多数情况下,我使用Include()。 但是我看到一些网站说include_once更安全,但是他们没有说明为什么它更安全。include_once()我认为这与安全无关,实际上,当我们放置include_once()时,意味着如果多次包含同一个文件,php不会给出任何错误,但如果使用include()它将给出一个错误。据我所知 使用include_once()时,保证文件只包含一次 使用include()时,它可能会被包含多次-具体取决于您的代码 错误的示例(程序
但是我看到一些网站说include_once更安全,但是他们没有说明为什么它更安全。include_once()我认为这与安全无关,实际上,当我们放置include_once()时,意味着如果多次包含同一个文件,php不会给出任何错误,但如果使用include()它将给出一个错误。据我所知 使用
include_once()
时,保证文件只包含一次
使用include()
时,它可能会被包含多次-具体取决于您的代码
错误的示例(程序可能引发异常):
- 重新定义一个常数
- 覆盖已经存在的函数
- 重复使用模板片段
include
和include\u once
之间的主要区别(不是唯一的区别)在于include
将包含所需的文件,即使该文件已经包含,但include\u once
不会“重新包含”已包含的文件。此外,除非无法找到文件,否则不会引发任何错误(事实上,如果没有引发错误的常见错误,例如重新定义/分配常量,则two函数将发出警告,脚本不会停止)。我想你把include
和require
混为一谈了。我真的看不出这些会对安全性产生什么影响。此外,你甚至不能覆盖PHP中的函数(不像JavaScript)。请参阅我在问题中关于“安全性”的评论。没有。好吧,我忽略了那个评论。也许你应该在回答中提供这些信息:)我想不写了,因为这是我的观点,没有技术上的解释。