php文件包含的几种方式总结


Posted in PHP onSeptember 19, 2019

四种语句

PHP中有四个加载文件的语句:include、require、include_once、require_once。

基本语法

require:require函数一般放在PHP脚本的最前面,PHP执行前就会先读入require指定引入的文件,包含并尝试执行引入的脚本文件。require的工作方式是提高PHP的执行效率,当它在同一个网页中解释过一次后,第二次便不会解释。但同样的,正因为它不会重复解释引入文件,所以当PHP中使用循环或条件语句来引入文件时,需要用到include。

include:可以放在PHP脚本的任意位置,一般放在流程控制的处理部分中。当PHP脚本执行到include指定引入的文件时,才将它包含并尝试执行。这种方式可以把程序执行时的流程进行简单化。当第二次遇到相同文件时,PHP还是会重新解释一次,include相对于require的执行效率下降很多,同时在引入文件中包含用户自定义函数时,PHP在解释过程中会发生函数重复定义问题。

require_once / include_once:分别与require / include作用相同,不同的是他们在执行到时会先检查目标内容是不是在之前已经导入过,如果导入过了,那么便不会再次重复引入其同样的内容。

相互区别

include和require:

include有返回值,而require没有返回值。

include在加载文件失败时,会生成一个警告(E_WARNING),在错误发生后脚本继续执行。所以include用在希望继续执行并向用户输出结果时。

//test1.php

<?php

include './tsest.php';

echo 'this is test1';

?>

 

//test2.php

<?php

echo 'this is test2\n';

function test() {

 echo 'this is test\n';

}

?>

 

//结果:

this is test1

require在加载失败时会生成一个致命错误(E_COMPILE_ERROR),在错误发生后脚本停止执行。一般用在后续代码依赖于载入的文件的时候。

//test1.php

<?php

require './tsest.php';

echo 'this is test1';

?>

 

//test2.php

<?php

echo 'this is test2\n';

function test() {

 echo 'this is test\n';

}

?>

结果:

php文件包含的几种方式总结

include和include_once:

include载入的文件不会判断是否重复,只要有include语句,就会载入一次(即使可能出现重复载入)。而include_once载入文件时会有内部判断机制判断前面代码是否已经载入过。这里需要注意的是include_once是根据前面有无引入相同路径的文件为判断的,而不是根据文件中的内容(即两个待引入的文件内容相同,使用include_once还是会引入两个)。

//test1.php

<?php

include './test2.php';

echo 'this is test1';

include './test2.php';

?>

 

//test2.php

<?php

echo 'this is test2';

?>

 

//结果:

this is test2this is test1this is test2

 

 

//test1.php

<?php

include './test2.php';

echo 'this is test1';

include_once './test2.php';

?>

 

//test2.php

<?php

echo 'this is test2';

?>

 

//结果:

this is test2this is test1

 

 

//test1.php

<?php

include_once './test2.php';

echo 'this is test1';

include './test2.php';

?>

 

//test2.php

<?php

echo 'this is test2';

?>

 

//结果:

this is test2this is test1this is test2

 

 

//test1.php

<?php

include_once './test2.php';

echo 'this is test1';

include_once './test2.php';

?>

 

//test2.php

<?php

echo 'this is test2';

?>

 

//结果:

this is test2this is test1

require和require_once:同include和include_once的区别相同。

以上就是本次介绍的全部知识点内容,感谢大家对三水点靠木的支持。

PHP 相关文章推荐
模板引擎Smarty深入浅出介绍
Dec 06 PHP
利用curl 多线程 模拟 并发的详解
Jun 14 PHP
php读取csv实现csv文件下载功能
Dec 18 PHP
一个严格的PHP Session会话超时时间设置方法
Jun 10 PHP
php抽象类使用要点与注意事项分析
Feb 09 PHP
php简单计算页面加载时间的方法
Jun 19 PHP
joomla数据库操作示例代码
Jan 06 PHP
PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID
Nov 25 PHP
php微信公众号开发(2)百度BAE搭建和数据库使用
Dec 15 PHP
php cli模式下获取参数的方法
May 05 PHP
使用vs code编辑调试php配置的方法
Jan 29 PHP
php实现的简单多进程服务器类完整示例
Feb 01 PHP
smarty模板的使用方法实例分析
Sep 18 #PHP
PHP MVC框架中类的自动加载机制实例分析
Sep 18 #PHP
PHP切割整数工具类似微信红包金额分配的思路详解
Sep 18 #PHP
php实现多站点共用session实现单点登录的方法详解
Sep 18 #PHP
PHP实现批量修改文件名的方法示例
Sep 18 #PHP
php DES加密算法实例分析
Sep 18 #PHP
php实现QQ小程序发送模板消息功能
Sep 18 #PHP
You might like
德生PL660的电路分析和打磨
2021/03/02 无线电
php 读取文件乱码问题
2010/02/20 PHP
php通过文件头检测文件类型通用代码类(zip,rar等)
2010/10/19 PHP
fetchAll()与mysql_fetch_array()的区别详解
2013/06/05 PHP
php数组(array)输出的三种形式详解
2013/06/05 PHP
jQuery操作select的实例代码
2012/06/14 Javascript
jquery在Chrome下获取图片的长宽问题解决
2013/03/20 Javascript
js获取通过ajax返回的map型的JSONArray的方法
2014/01/09 Javascript
jquery+ajax+C#实现无刷新操作数据库数据的简单实例
2014/02/08 Javascript
Javascript基础知识(三)BOM,DOM总结
2014/09/29 Javascript
JS控制网页动态生成任意行列数表格的方法
2015/03/09 Javascript
js实现的彩色方块飞舞奇幻效果
2016/01/27 Javascript
Jquery和BigFileUpload实现大文件上传及进度条显示
2016/06/27 Javascript
jQuery电话号码验证实例
2017/01/05 Javascript
浅谈JavaScript中promise的使用
2017/01/11 Javascript
Angular中的$watch方法详解
2017/09/18 Javascript
浅析Visual Studio Code断点调试Vue
2018/02/27 Javascript
基于Vue渲染与插件的加载顺序的问题详解
2018/03/05 Javascript
js中获取URL参数的共用方法getRequest()方法实例详解
2018/10/24 Javascript
JS实现textarea通过换行或者回车把多行数字分割成数组并且去掉数组中空的值
2018/10/29 Javascript
微信实现自动跳转到用其他浏览器打开指定APP下载
2019/02/15 Javascript
点击按钮弹出模态框的一系列操作代码实例
2019/03/29 Javascript
js实现简单点赞操作
2020/03/17 Javascript
Python基于pygame实现的弹力球效果(附源码)
2015/11/11 Python
新年快乐! python实现绚烂的烟花绽放效果
2019/01/30 Python
详解pandas中MultiIndex和对象实际索引不一致问题
2019/07/23 Python
python3 图片 4通道转成3通道 1通道转成3通道 图片压缩实例
2019/12/03 Python
css3 中translate和transition的使用方法
2020/03/26 HTML / CSS
英国在线自行车店:Merlin Cycles
2018/08/20 全球购物
企业趣味活动方案
2014/08/21 职场文书
2015年世界环境日演讲稿
2015/03/18 职场文书
道歉信范文
2015/05/12 职场文书
2015年英语教师工作总结
2015/05/20 职场文书
2016年共产党员公开承诺书
2016/03/24 职场文书
JavaScript+HTML实现学生信息管理系统
2021/04/20 Javascript
解决python3安装pandas出错的问题
2021/05/20 Python