深入掌握include_once与require_once的区别


Posted in PHP onJune 17, 2013

①作用及用法

可以减少代码的重复

include(_once)("文件的路径")与require(_once)("文件的路径")

②理解

说白了,就是用包含进来的文件中的内容 代替 include(_once),require(_once)那一行

③注意

include/require 包含进来的文件必须要加<?php ?>因为在包含时,首先理解文件内容是普通字符串,碰到<?php ?> 标签时,才去解释

④路径

可以用绝对路径,也可以用相对路径;windows下正反斜线都可以,linux下只认正斜线,所以最好用正斜线

⑤区别

include是包含的意思,找不到文件时,会报warning的错误,然后程序继续往下执行

require是必须的意思,找不到文件时,会报fatal error (致命错误),程序停止往下执行

加once后,系统会进行判断,如果已经包含,则不会再包含第二次

eg:有一个a.php文件 内容是<?php $a++ ;?>

在b.php文件中的内容是 $a=5; require_once("a.php"); echo $a; require_once("a.php"); echo $a;

结果第一处输出的是6, 第二处输出的还是6,说明。。_once只包含一次 ,如果不加once,则第二处输出的会是7

⑥取舍

比如是系统配置,缺少了,网站不让运行,自然用require,如果是某一段统计程序,少了,对网站只是少统计人数罢了,不是必须要的,可以用include

而加不加once是效率上的区别,加上once,虽然系统帮你考虑了只加载一次,但系统的判断会是效率降低,因此,更应该在开发之初,就把目录结构调整好,尽量不要用_once的情况。

⑦特殊用法

利用include/require返回被包含页面的返回值

a.php页面中: ..... return $value; b.php页面中:$v = include("a.php");
<!--[endif]-->

这个用法在做网站配置的时候会偶尔碰到!

PHP 相关文章推荐
php 全文搜索和替换的实现代码
Jul 29 PHP
php中设置多级目录session的问题
Aug 08 PHP
解决ajax+php中文乱码的方法详解
Jun 09 PHP
php实现获取及设置用户访问页面语言类
Sep 24 PHP
php比较两个字符串长度的方法
Jul 13 PHP
php检查页面是否被百度收录
Oct 28 PHP
php错误日志简单配置方法
Jul 11 PHP
Yii实现文章列表置顶功能示例
Oct 18 PHP
PHP验证码无法显示的原因及解决办法
Aug 11 PHP
Laravel框架实现定时发布任务的方法
Aug 16 PHP
Laravel框架实现超简单的分页效果示例
Feb 08 PHP
Laravel Eloquent分表方法并使用模型关联的实现
Nov 25 PHP
php抓取页面的几种方法详解
Jun 17 #PHP
深入PHP magic quotes的详解
Jun 17 #PHP
php错误级别的设置方法
Jun 17 #PHP
PHP大小写问题:函数名和类名不区分,变量名区分
Jun 17 #PHP
修改php.ini以达到屏蔽错误信息并记录日志
Jun 16 #PHP
php fsockopen伪造post与get方法的详解
Jun 14 #PHP
探讨:parse url解析URL,返回其组成部分
Jun 14 #PHP
You might like
mcrypt启用 加密以及解密过程详细解析
2013/08/07 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
2014/09/10 PHP
Laravel中使用自己编写类库的3种方法
2015/02/10 PHP
浅析PHP中的i++与++i的区别及效率
2016/06/15 PHP
thinkPHP框架中执行事务的方法示例
2018/05/31 PHP
用js自动判断浏览器分辨率的代码
2007/01/28 Javascript
Prototype中dom对象方法汇总
2008/09/17 Javascript
JavaScript实现QueryString获取GET参数的方法
2013/07/02 Javascript
js特殊字符转义介绍
2013/11/05 Javascript
JavaScript设计模式之外观模式实例
2014/10/10 Javascript
JavaScript中的acos()方法使用详解
2015/06/14 Javascript
JS禁止查看网页源代码的实现方法
2016/10/12 Javascript
angular2倒计时组件使用详解
2017/01/12 Javascript
在vue中实现简单页面逆传值的方法
2017/11/27 Javascript
vue2 全局变量的设置方法
2018/03/09 Javascript
Bootstrap-table使用footerFormatter做统计列功能
2018/09/07 Javascript
浅析微信扫码登录原理(小结)
2018/10/29 Javascript
Vue项目报错:Uncaught SyntaxError: Unexpected token
2018/11/10 Javascript
鸿蒙系统中的 JS 开发框架
2020/09/18 Javascript
[00:52]玛尔斯技能全介绍
2019/03/06 DOTA
python 域名分析工具实现代码
2009/07/15 Python
简单的Apache+FastCGI+Django配置指南
2015/07/22 Python
Python的string模块中的Template类字符串模板用法
2016/06/27 Python
Python自动生产表情包
2017/03/17 Python
python pandas写入excel文件的方法示例
2019/06/25 Python
python爬虫实现获取下一页代码
2020/03/13 Python
python实现ssh及sftp功能(实例代码)
2020/03/16 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
2020/04/21 Python
HTML5 canvas基本绘图之图形组合
2016/06/27 HTML / CSS
HTML5不支持frameset的两种解决方法
2016/11/14 HTML / CSS
西班牙鞋子和箱包在线销售网站:zapatos.es
2020/02/17 全球购物
入股协议书范本
2014/04/14 职场文书
高中学校对照检查材料
2014/08/31 职场文书
小学生通知书评语
2014/12/31 职场文书
css3 filter属性的使用简介
2021/03/31 HTML / CSS
vue实现列表拖拽排序的示例代码
2022/04/08 Vue.js