今天我接受了一次采访,面试官问我一个问题,即需要和包含在php之间的区别? 我回答他,因为需要和包含的区别在于,如果你需要一个无法加载的文件,那么它会发出致命的错误而脚本将无法执行,如果你包含一个无法加载的文件,它只会给出警告并继续执行脚本。
他回答说:这两者之间的基本区别是什么而不是警告和致命错误?我无法在那里证明自己的答案。
当我回来的时候我会谷歌,但除此之外我找不到任何东西。任何人都知道他究竟想问什么或听我说什么?或任何其他差异?
答案 0 :(得分:5)
1)如果我们使用此方法添加文件但在给定路径中不存在,则会发生致命错误。 *脚本将停止工作*
2)如果我们使用此方法添加文件但在给定路径中不存在,则会发生警告。 *脚本不会停止工作*
PHP中存在不同类型的错误。
但是对于Parse Error
和Fatal Error
,脚本会停止工作。
使用Parse Error
(语法错误,例如缺少;
),脚本根本无法运行。
使用Fatal Error
,(例如包含require
的不存在的文件,脚本将执行到该行,但不会在此之后执行。)
否则,他们只会显示错误。
答案 1 :(得分:0)
require会产生致命错误(E_COMPILE_ERROR)并停止脚本
include只会产生警告(E_WARNING),脚本将继续
了解更多详情,请查看此链接
答案 2 :(得分:0)
require()
函数与include()
相同,只是它以不同方式处理错误。如果发生错误,include()
函数会生成警告,但脚本将继续执行。 require()
生成致命错误,脚本将停止执行。
警告是一条消息,说明“你做错了,将来很可能会导致错误,所以请修理它。”
答案 3 :(得分:-1)
您回答的是100%正确。根据w3schools:
include和require语句是相同的,除非失败:
- require将产生致命错误(E_COMPILE_ERROR)并停止脚本
- include只会产生警告(E_WARNING),脚本将继续