require()是php的内置函数,作用是引入或者包含外部php文件。
工作原理:当本身php文件被执行时,则外部文件的内容就将被包含进该自身php文件中;当包含的外部文件发生错误时,系统将抛出错误提示,并且停止php文件的执行。
注意:使用require时,一个文件存在错误的话,那么程序就会中断执行了,并显示致命错误 。
比如cl.php,ts.php两个文件,ts.php要用到cl.php文件中的函数,需要在ts.php中引入或者包含cl.php即可.示例如下:
cl.php
function show(){
echo "cl.php文件中的show方法被调用了!";
}
?>
ts.php
require 'cl.php';
show();
?>
运行结果:
相当于把 cs.html 的内容读出来、让后写如到 cs.php文件相应的位置、也可以理解为把 php require ‘cs.html’; ?>替换为了cs.html中的内容。
说白了就是直接引用过来了、源文件是什么、到了这里还是什么、
是的。
require() 语句包括并运行指定文件。
require_once(): 只包含一次,如果该文件已经被包含了,那么就不会再次包含
与它相似的还有require()
两者的区别是:
include是包含的意思,找不到文件时,会报warning的错误,然后程序继续往下执行
require是必须的意思,找不到文件时,会报fatal error (致命错误),程序停止往下执行
require的作用就是引入其他文件
也可以你这么理解,相对于在当前文件集合,也可以这么理解,就是多个文件当成一个文件用
这种方式的作用,其实就是一个,就是引入公共文件
比如,你有一段代码,在很多文件中都要用到,如果你每个文件都来写这么一段代码,一则累、效率低,二则以后维护起来也累、效率低,比如想修改某个功能或者参数,而你的网站程序有500个文件,一个一个文件修改岂不是累死人?
而把一些公共的、经常需要的代码放在一个文件,然后别的文件需要的时候,将他引入,这样岂不是很方便?
至于你的疑问,服务器解析的时候,只会把php动态代码进行编译而生成html源,而页面本身有的html源,服务器是不会经过解析的,当php运行完成后,服务器会把生成的html源和原来有的html源一并发送到客户端(比如浏览器)进行展示
那你有没有疑问,外面引用js,css是怎么做到的