
require 和 include 仅仅是处理失败的方式不同,出错时 require 终止脚本运行,而 include 产生警告。 require 和 require_once 区别在于 require_once 在导入文件前会检查是否已经被导入。
我认为仅提供一个 require_once 就够了,不懂二者设计的初衷,有没有人给解释一下?
参考
1 ysc3839 2018 年 10 月 16 日 仅提供一个 require_once,如果要多次导入该怎么办? |
3 phpinfos 2018 年 10 月 16 日 不仅仅属于 PHP 的问题,很多语言都有这样的问题。 |
5 newtype0092 2018 年 10 月 16 日 你的前两句不就回答了你后面的问题么? 脚本出错是终止报错还是抛异常继续执行,有的语言用启动参数实现,php 用不同关键字实现。 require 是覆盖还是非覆盖,有的语言只提供非覆盖,但提供清除缓存方法,php 用不同关键字实现。 include 也有 include_once。 |
6 WuwuGin 2018 年 10 月 16 日 你觉得你用不到的就是设计失误了? |
7 spicycoffee 2018 年 10 月 16 日 |
8 newtype0092 2018 年 10 月 16 日 @gbin #2 你 require 一个纯配置文件,运行过程中修改了某些配置,现在要重置,直接再 require 一次比解析文件一个一个赋值方便但多吧。 有些类在运行时修改了内部方法,可以再 require 一次恢复。 require 文件可以在运行过程中热更新代码。 类似的还有很多,算是脚本语言的特殊用法吧,不止 php 有,你只是见的少。 |
9 liuguang 2018 年 10 月 16 日 早就不用这玩意了,都用 composer 自动加载了,唯一需要的也就是 include vendor/autoload.php |