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