深入掌握include_once与require_once的区别
①作用及用法
可以减少代码的重复
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]-->
这个用法在做网站配置的时候会偶尔碰到!
相关推荐
-
node.js使用require()函数加载模块
详细说明均以写在注释之中,这里就不啰嗦了,小伙伴们自己详细看吧,千万别吧注释当成空气了. 复制代码 代码如下: /*在node中,可以使用require()函数来加载模块. * require函数使用一个参数,参数值可以带有完整路径的模块的文件名,也可以为模块名.当使用node中提供的模块时,在require函数中只需要指定模块名即可. * */ //建立一个页面2.js;代码如下 var name="思思博士"; exports.name=name; //建立一个页面1.js;代
-
使用RequireJS库加载JavaScript模块的实例教程
js通过script标签的默认加载方式是同步的,即第一个script标签内的js加载完成后,才开始加载第二个,以此类推,直至js文件全部加载完毕.且js的依赖关系必须通过script的顺序才能确保:而在js加载期间,浏览器将停止响应,这大大影响了用户体验,基于此,很多解决js以来和加载的方案出现,require js就是其中之一. requirejs加载的模块,一般为符合AMD标准的模块,即用define定义,用ruturn返回暴露方法.变量的模块:requirejs也可以加载飞AMD标准的模块
-
nodejs的require模块(文件模块/核心模块)及路径介绍
在nodejs中,模块大概可以分为核心模块和文件模块. 核心模块是被编译成二进制代码,引用的时候只需require表示符即可,如(require('net')). 文件模块,则是指js文件.json文件或者是.node文件.在引用文件模块的时候后要加上文件的路径:/.../.../xxx.js表示绝对路径../xxx.js表示相对路径(同一文件夹下的xxx.js),../表示上一级目录.如果既不加/.../.../又不加./的话,则该模块要么是核心模块,要么是从一个node_modules文件夹
-
require(),include(),require_once()和include_once()区别
我把这两个语句放在一起介绍,读者可以比较学习. 1.require()语句 require()语句用于指定的文件代替语句本身,就象C语言中的include()语句一样.如果php配置文件php.ini中的URL fopen wrappers 是打开的(默认情况下是打开的),就可以使用URL来指定文件的位置从而实现远程文件的调用. 有一点就是使用require()和include()语句时要特别的注意.那就是在被包含的文件中,处理器是按照html模式来解释其中的内容的,处理完被包含的内容后又恢复到
-
自定义require函数让浏览器按需加载Js文件
前言 本文介绍的是自定义require函数让浏览器实现按需加载Js文件,那到底要怎么自己写一个按需加载的库呢 为了实现按需加载: //这是我们要实现的功能,require('str.js')时加载str.js文件,并创建一个叫str对象,等加载完毕之后执行str对象的ready方法里的函数. var str = require('str.js'); str.ready(show); //要执行的函数 function show(res){ console.log(res); } //str.js
-
require.js 加载 vue组件 r.js 合并压缩的实例
准备: vue.js 原本是学习vue组件 require.js 然后想到用require 加载 r.js 文件太多 合并 文件目录 忽略部分文件及文件夹 一.先说vue 组件 先引入vue 再引入vue组件 Vue.extend({}) 定义组件 template data methods Vue.component(),注册组件的标签,标签在html中是一个挂载点 new Vue() 进行实例化 index.html // css引入 略 <div id="header"&g
-
简单模拟node.js中require的加载机制
一.先了解一下,nodejs中require的加载机制 1.require的加载文件顺序 require 加载文件时可以省略扩展名: require('./module'); // 此时文件按 JS 文件执行 require('./module.js'); // 此时文件按 JSON 文件解析 require('./module.json'); // 此时文件预编译好的 C++ 模块执行 require('./module.node'); // 载入目录module目录中的 package.js
-
在JavaScript应用中使用RequireJS来实现延迟加载
无论简单还是复杂的Web应用,都由一些HTML.JavaScript.CSS文件组成.通常开发者会通过JQuery.Knockout.Underscore等等这样的第三方JavaScript框架来提高开发速度.由于这些JavaScript框架都针对特定的用途开发而且已经得到了"验证",所以直接使用它们就比自己从头实现所需要的功能显得更为合适.然而,伴随着应用的复杂度不断上升,写出干净.低耦合.可维护的代码变得越来越重要.在这篇文章里,我将解释 RequireJS框架如何帮助应用开发者写
-
php命令行(cli)模式下报require 加载路径错误的解决方法
今天,同事突然告诉我,我写的一个做计划任务的php脚本执行总是不成功. 脚本本身很简单,里面只有包含了几个库文件并执行了一个函数,函数应该没有错误,这个函数在别处也调用过,没有问题.我在本地用浏览器访问页面,执行成功,看来没有问题,我有点怀疑是同事的计划任务的问题.我又打开命令行,用php直接执行脚本,这回报错了,是require 包含文件错误,看来是路径不对. 不明白是什么原因引起的,只是从报错来看是路径不对,我猜测是跟相对路径有关,于是把相对路径的全部改成绝对路径,再执行,问题解决. 在百度
-
探索angularjs+requirejs全面实现按需加载的套路
在进行有一定规模的项目时,通常希望实现以下目标:1.支持复杂的页面逻辑(根据业务规则动态展现内容,例如:权限,数据状态等):2.坚持前后端分离的基本原则(不分离的时候,可以在后端用模版引擎直接生成好页面):3.页面加载时间短(业务逻辑复杂就需要引用第三方的库,但很可能加载的库和用户本次操作没关系):4,还要代码好维护(加入新的逻辑时,影响的文件尽量少). 想同时实现这些目标,就必须有一套按需加载的机制,页面上展现的内容和所有需要依赖的文件,都可以根据业务逻辑需要按需加载.最近都是基于angula
随机推荐
- MySQL备份与恢复之保证数据一致性(5)
- 网址(URL)支持的最大长度是多少?最大支持多少个字符?
- 你需要知道的10个最佳javascript开发实践小结
- js前端解决跨域问题的8种方案(最新最全)
- bytes2BSTR
- VBS教程:对象-Match 对象
- JS事件在IE与FF中的区别详细解析
- ASP.NET MVC5网站开发之实现数据存储层功能(三)
- asp.net下文件上传和文件删除的代码
- php微信公众平台配置接口开发程序
- PHP中的print_r 与 var_dump 输出数组
- Python全局变量操作详解
- Vue.js学习记录之在元素与template中使用v-if指令实例
- 学习JavaScript设计模式之策略模式
- jquery选择器之基本过滤选择器详解
- 微信小程序之GET请求的实例详解
- NT双机热备份系统实例
- 你必须知道的JavaScript 中字符串连接的性能的一些问题
- 80端口被占用 Apache启动失败的解决方法
- android图像绘制(七)ClipRect局部绘图/切割原图绘制总结