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 相关文章推荐
PHP+FLASH实现上传文件进度条相关文件 下载
Jul 21 PHP
某大型网络公司应聘时的笔试题目附答案
Mar 27 PHP
PHP 强制下载文件代码
Oct 24 PHP
PHP时间戳与日期之间转换的实例介绍
Apr 19 PHP
php教程之魔术方法的使用示例(php魔术函数)
Feb 12 PHP
使用php显示搜索引擎来的关键词
Feb 13 PHP
CI使用Tank Auth转移数据库导致密码用户错误的解决办法
Jun 12 PHP
ThinkPHP Mobile使用方法简明教程
Jun 18 PHP
php+jQuery.uploadify实现文件上传教程
Dec 26 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
Mar 25 PHP
PHP编程获取各个时间段具体时间的方法
May 26 PHP
PHP文件操作简单介绍及函数汇总
Dec 11 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
使用网络地址转换实现多服务器负载均衡
2006/10/09 PHP
PHP base64+gzinflate压缩编码和解码代码
2008/10/03 PHP
php下将图片以二进制存入mysql数据库中并显示的实现代码
2010/05/27 PHP
PHP中Session引起的脚本阻塞问题解决办法
2014/04/08 PHP
PHP小技巧之函数重载
2014/06/02 PHP
浅谈PHP中其他类型转化为Bool类型
2016/03/28 PHP
php+mysql+ajax实现单表多字段多关键词查询的方法
2017/04/15 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
jQuery中:checkbox选择器用法实例
2015/01/03 Javascript
JavaScript实现动画打开半透明提示层的方法
2015/04/21 Javascript
jQuery实现表单步骤流程导航代码分享
2015/08/28 Javascript
JavaScript中闭包的写法和作用详解
2016/06/29 Javascript
KnockoutJS 3.X API 第四章之数据控制流if绑定和ifnot绑定
2016/10/10 Javascript
seajs模块之间依赖的加载以及模块的执行
2016/10/21 Javascript
Javascript中八种遍历方法的执行速度深度对比
2017/04/25 Javascript
Vue2.0 组件传值通讯的示例代码
2017/08/01 Javascript
Chrome调试折腾记之JS断点调试技巧
2017/09/11 Javascript
AngularJs 终极购物车(实例讲解)
2017/11/08 Javascript
vue项目打包部署_nginx代理访问方法详解
2018/09/20 Javascript
浅谈微信页面入口文件被缓存解决方案
2018/09/29 Javascript
jQuery实现的模仿雨滴下落动画效果
2018/12/11 jQuery
微信小程序按钮点击动画效果的实现
2019/09/04 Javascript
Javascript Dom元素获取和添加详解
2019/09/24 Javascript
JS页面获取 session 值,作用域和闭包学习笔记
2019/10/16 Javascript
解决在Vue中使用axios用form表单出现的问题
2019/10/30 Javascript
NodeJS开发人员常见五个错误理解
2020/10/14 NodeJs
构建一个JavaScript插件系统
2020/10/20 Javascript
解决win7操作系统Python3.7.1安装后启动提示缺少.dll文件问题
2019/07/15 Python
Python(PyS60)实现简单语音整点报时
2019/11/18 Python
Python实现银行账户资金交易管理系统
2020/01/03 Python
HTML5 声明兼容IE的写法
2011/05/16 HTML / CSS
Too Faced官网:美国知名彩妆品牌
2017/03/07 全球购物
盛大二次面试题
2016/11/18 面试题
公司年会策划方案
2014/05/17 职场文书
中专毕业生的自荐书
2014/07/01 职场文书
治庸问责工作总结
2015/08/11 职场文书