PHP Include Include_once Require Require_once 文件

include (或 require)语句会获取指定文件中存在的所有文本/代码/标记,并复制到使用 include 语句的文件中。

包含文件很有用,如果您需要在网站的多张页面上引用相同的 PHP、HTML 或文本的话。

比如我们在项目开发的过程中经常加载文件,例如css,js,php等文件

加载CSS:

加载JS:

加载PHP:

PHP include 文件

PHP include 和 require 语句

通过 include 或 require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件(在服务器执行它之前)。

include 和 require 语句是相同的,除了错误处理方面:

require 会生成致命错误(E_COMPILE_ERROR)并停止脚本

include 只生成警告(E_WARNING),并且脚本会继续

因此,如果您希望继续执行,并向用户输出结果,即使包含文件已丢失,那么请使用 include。否则,在框架、CMS 或者复杂的 PHP 应用程序编程中,请始终使用 require 向执行流引用关键文件。这有助于提高应用程序的安全性和完整性,在某个关键文件意外丢失的情况下。

包含文件省去了大量的工作。这意味着您可以为所有页面创建标准页头、页脚或者菜单文件。然后,在页头需要更新时,您只需更新这个页头包含文件即可。

语法:

include 'filename';

require 'filename';

实例:假设我们有一个名为 "header.php" 的标准菜单文件:

Header.php

我们在index文件中加载header.php文件,如下

结果:

index加载(include)文件

PHP include 和 require

require 语句同样用于向 PHP 代码中引用文件。不过,include 与 require 有一个巨大的差异:如果用 include 语句引用某个文件并且 PHP 无法找到它,脚本会继续执行,而require则会报错误信息,并且脚本不会执行。

如我们加载一个不存在的文件 "test.php"。

虽然include加载一个不存在的文件,会有报错信息,但不会终止程序

reqiure加载一个不存在的文件,会有报错信息,且会终止程序。

include_once,require_once

include()、require()执行即包含文件,不会对引入的文件进行比较判断,可能会出现重复包含的情况;而include_once()、require_once()在包含时会先判断文件是否已经包含过了,如果已包含,则不再包含文件,这样的引入文件方式即可以节省资源,又可避免重复定义的错误。

作者:林路同

链接:https://www.jianshu.com/p/2011cd407524

php include file_包含与被包含(PHP include文件)相关推荐

  1. JSP include指令(静态包含和动态包含)

    文章目录 前言 一.include指令是什么? 二.静态包含和动态包含 2.1 语法格式 2.2 过程 2.2.1静态包含过程 2.2.1动态包含过程 三.两者的主要区别 前言 JSP全称Java S ...

  2. c++ h cpp文件如何关联_C++核心准则SF.5: .cpp文件必须包含定义它接口的.h文件

    SF.5: A .cpp file must include the .h file(s) that defines its interface SF.5: .cpp文件必须包含定义它接口的.h文件 ...

  3. java代码审计文件包含_代码审计--一道简单的文件包含题目的多种利用方式

    不知出自哪次CTF 前言: 本萌新最近在学习代码审计, 有一天在水群聊到代码审计如何学习, 然后某dalao丢给我一道题,说你对这题有什么看法, 本萌新一看,这不是很简单吗,想也没多想就直接上去?fi ...

  4. 远程文件包含 php,php本地及远程文件包含漏洞

    在php程序中包含有file inclusion的时候,php要开启一下两个功能: allow_url_fopen on allow_url_include on 但是开启这两个功能之后伴随的是url ...

  5. 文件包含之本地包含的利用

    文件包含漏洞 在php开发中程序员一般为了方便直接调用一些文件的代码会使用文件包含,如果这个时候把要被包含的文件使用一个变量名控制不做任何过滤就会造成文件包含漏洞 include(filename)这 ...

  6. LFI(本地文件包含)、RFI(远程文件包含)、PHP封装协议(伪协议)安全问题学习

    友情链接:https://www.cnblogs.com/LittleHann/p/3665062.html 目录 一.文件包含的基本概念 1.要想成功利用文件包含漏洞,需要满足下面的条件 (1)in ...

  7. php文件包含读源码,CTF PHP文件包含--session

    PHP文件包含 Session 首先了解一下PHP文件包含漏洞----包含session 利用条件:session文件路径已知,且其中内容部分可控. 姿势: php的session文件的保存路径可以在 ...

  8. 如何防止头文件被重复包含、嵌套包含

    [转自] http://hi.baidu.com/zengzhaonong/blog/item/8a8871062d481f7f03088106.html #include文件的一个不利之处在于一个头 ...

  9. 静态包含和动态包含的区别

    1) 语法不同 静态包含语法: <%@inclue file="被包含的页面"%> 动态包含语法: <jsp:include page="被包含的页面& ...

最新文章

  1. TCP网络应用程序的注意点
  2. java分布式锁终极解决方案之 redisson
  3. fscanf和feof的组合使用
  4. Java注解的基本概念和原理及其简单实用
  5. C#多线程之旅(1)——介绍和基本概念
  6. 员工任务管理系统c语言,C语言职工信息管理系统课程设计任务书.docx
  7. matplotlib之scatter
  8. 【kafka】kerberos Server not found in Kerberos database LOOKING_UP_SERVER Identifier doesn‘t match
  9. 数据库设计的三大范式通俗解释
  10. elasticsearch常用配置
  11. obs计算机丢失,安装obs时提醒没法启动此程序,因为计算机丢失
  12. DM数据库归档备份还原
  13. 给大家推荐一波Python书单,电子版拿走不谢
  14. javaweb项目实训总结_JAVA WEB实训总结
  15. 数据挖掘 第五篇:分类(kNN)
  16. Abbyy FineReader PDF转word不乱码
  17. ABAP ALV DATA_CHANGED 函数使用说明 (ALV备忘二)
  18. 《动手实现一款简单的拦阻球游戏》
  19. 阿拉伯语系下状态栏图标不要反向显示
  20. 在 SQL 中计算两个时间戳相隔的天时分秒

热门文章

  1. 丑憨批的爬虫笔记3(实例)
  2. 深度神经网络实践:车牌识别
  3. 转向语句 goto语句
  4. Spring Boot2.0 JPA 实现分页(简单查询分页、复杂查询分页)
  5. seata+nacos出现can not register RM,err:can not connect to services-server
  6. 十大经典排序算法之插入排序及其二分优化
  7. Java Web——文件下载getResourceAsStream()返回NULL解决方案
  8. Linux(CentOS 7)——阿里云 云服务器 ECS上Apache服务器安装与配置
  9. SpringBoot入门篇之properties中定义user.name失效解决
  10. flash socket 发对象问题