require,include,require_once,include_once的区别
最近面试时被问到,一时间还真没想到太多,仅仅回答了大概的几个,于是回来再确认一下。
以下内容为网络摘抄:
①作用及用法
可以减少代码的重复
include(_once)("文件的路径")与require(_once)("文件的路径")
②理解
说白了,就是用包含进来的文件中的内容 代替 include(_once),require(_once)那一行
③注意
include/require 包含进来的文件必须要加<?php ?>因为在包含时,首先理解文件内容是普通字符串,碰到<?php ?> 标签时,才去解释
④路径
可以用绝对路径,也可以用相对路径;windows下正反斜线都可以,linux下只认正斜线,所以最好用正斜线
⑤区别
include是包含的意思,找不到文件时,会报warning的错误,然后程序继续往下执行
require是必须的意思,找不到文件时,会报fatal error (致命错误),程序停止往下执行
无论require的位置如何,制定文件都将包含到出现require的脚本中。例如,即使require放在计算结果为假的if语句中,依然会包含指定文件。
加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_once, 只能证明, 你对自己的代码没信心.”。
⑦特殊用法
利用include/require返回被包含页面的返回值
a.php页面中: ..... return $value; b.php页面中:$v = include("a.php");
<!--[endif]-->
require,include,require_once,include_once的区别的更多相关文章
- [转]require(),include(),require_once()和include_once()区别
require(),include(),require_once()和include_once()区别 面试中最容易提到的一个PHP的问题,我想和大家共勉一下: require()和include() ...
- 关于require,require_once,include和include_once的区别
一.定义 require,require_once,include,include_once都属于PHP的关键字,也就是说它们实际都是PHP的语句,而不是函数,类似于print,echo一样,也是PH ...
- 【转载】PHP中require(),include(),require_once()和include_once()区别
关于这方面的知识,这篇文章讲的较全: http://www.jb51.net/article/22467.htm require 的使用方法如 require("MyRequireFile. ...
- php require、require_once和include、include_once的区别
一.引入php文件路径的方法require '文件路径'; require ('文件路径');require_once '文件路径'; require_once ('文件路径');include 同 ...
- PHP中require(),include(),require_once()和include_once()有什么区别
引用文件的方法有两种:require 及 include.两种方式提供不同的使用弹性. require 的使用方法如 require("MyRequireFile.php"); . ...
- require(),include(),require_once()和include_once()之间的区别
引用文件的方法有两种:require 及 include. require 的使用方法如 require("file.php"); .这个函数通常放在 PHP 程序的最前面,PHP ...
- require include php5中最新区别,百度上好多错的。
二者报错机制不同,include是warning 继续执行程序,require会报致命错误,中断程序运行. 前者有返回值,后者则没有. 注意了,php5里有一个区别没了,之前说的是require是无条 ...
- PHP函数include include_once require和require_once的区别
了解下include.include_once.require和require_once这4个函数: include函数:会将指定的文件读入并且执行里面的程序: require函数:会将目标文件的内容 ...
- include,include_once,require,require_once的区别
1.include,require在其被调用的位置处包含一个文件. 2.include_once,require_once函数的作用与include相同,不过它会首先验证是否已包含该文件.如果已经包含 ...
随机推荐
- 服务器端接受Json数据的绑定实现
1.在方法参数前加上JsonRead<T>的泛型特性 public ActionResult GetData([JsonRead(typeof(PostData))]PostData po ...
- NetDMA
NetDMA provides operating system support for direct memory access (DMA) offload. TCP/IP uses NetDMA ...
- JS调用水晶报表打印翻页按钮事件
默认的水晶报表打印按钮.翻页按钮太小,并且样式不好调整,考虑自己做一个按钮,然后调用水晶报表的按钮事件. 在实际操作中发现可以在.net按钮的服务器端事件中调用翻页方法: CrystalReportV ...
- Ubuntu root密码修改
安装完Ubuntu后忽然意识到没有设置root密码,不知道密码自然就无法进入根用户下.到网上搜了一下,原来是这麽回事.Ubuntu的默认root密码是随机的,即每次开机都有一个新的root密码.我们可 ...
- 手机访问pc网站自动跳转手机端网站代码
<SCRIPT LANGUAGE="JavaScript">function mobile_device_detect(url){ var thisOS= ...
- odoo 动态创建字段的方法
动态创建字段并非一个常见的的需求,但某些情况下,我们确实又需要动态地创建字段. Odoo 中创建字段的方法有两种,一种是通过python文件class中进行定义,另一种是在界面上手工创建,odoo通过 ...
- tab左右箭头切换
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 屏蔽Enter触发的事件
无论是 <button type="button" onclick="console.log('123');">123</button> ...
- 使用方法:mail_sendmail($params)
使用方法:mail_sendmail($params) 类构造函数,$params是一个关联数组,你可以设定sendmail的参数,目前只有sendmail_path是有效的,用来设置sendmail ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...