# PHP服务端文件包含
[TOC]
文件包含:将网站中公共的代码,放到一个公共文件中,通过服务器端包含语句(include、require)包含到当前文件中。这样做的好处:**避免重复代码的编写**,也有利于后期维护。包含的文件,可以是`.html`文件,也可以是`.php`文件。文件代码包含函数有四个:`include`、`require`、`include_once`、`require_once`
## include
描述:包含并运行指定文件。
语法:`include 包含的文件路径`或 `include(包含的文件路径)`
参数:包含的文件的路径,可以是相对路径,也可以是绝对路径;
提示:include是一个语法结构,**可以带括号,也可以不带括号**。
注意:**如果包含的文件不存在,则会报 warning警告错误,但不会中止脚本向下运行**。
返回:如果包含文件成功,返回1。
```
# 语法
include '要包含的文件路径,可以是相对也可以是绝对'
include_once '要包含的文件路径,可以是相对也可以是绝对'
# 包含过来要注意,同名函数会报错
```
![](https://i.loli.net/2019/03/21/5c938dafe3a41.png)
![](https://i.loli.net/2019/03/21/5c938e5340102.png)
## include与include\_once 区别
两者功能完全一样,如果包含的文件不存在,则报警告错误,但不会中止脚本运行。
两者唯一区别是:**如果该文件中已经被包含过,则include\_once不会再次包含**。
include\_once可以用来判断文件是否曾经包含过,这样可以**避免函数重定义**,**变量重新赋值**等问题
![](https://i.loli.net/2019/03/21/5c938efc3dad3.png)
![](https://i.loli.net/2019/03/21/5c938f23e2b7a.png)
## require
描述:包含并运行指定文件。
语法:**`require 包含的文件路径`** 或 **require(包含的文件路径)**
参数:包含的文件路径及文件名称。
注意:**如果包含的文件不存在,则会报致命错误,并会中止脚本向下运行**。
返回:如果包含文件成功,返回1。
```
# 基本与include一样,差别就是一个报错警告一个直接致命错误
require '文件路径'
require_once '文件路径'
```
## require与require\_once区别
两者功能完全一样,如果包含的文件不存在,则报致命错误,会中止脚本运行。
两者唯一区别是:**如果该文件中已经被包含过,则require\_once不会再次包含**。
require\_once可以用来判断文件是否曾经包含过,这样可以**避免函数重定义**,**变量重新赋值**等问题
## 包含文件返回数据
如果**return语句用在被包含文件中**,返回的数据可以赋给一个变量
![](https://box.kancloud.cn/34daadd762379c28ca495ab45c3ba642_1393x647.png)
- 基础
- 安装PHP
- 语言基础
- 变量
- 变量操作
- 超全局数组变量
- 变量作用域
- 变量传值方式
- 常量
- 数据类型
- 运算符
- 流程控制
- 文件包含
- 错误处理
- 字符串操作
- 数组
- 函数
- 进阶
- 面向对象
- 提高
- TP
- 安装项目
- 框架基础知识
- 命令创建模块
- URL生命周期
- 路由操作
- Request请求类
- 参数绑定
- 依赖注入
- 模板操作
- 查询操作
- 添加操作
- laravel
- ☆目录结构
- CSRF攻击
- ☆路由
- ☆控制器
- ☆请求类
- ☆视图
- ☆模板继承
- ☆表单验证
- ☆DB类
- ☆模型
- ☆数据库迁移
- 类型、修饰、索引
- ☆数据填充
- ☆数据分页
- ☆session处理
- ☆中间件
- ☆缓存操作
- ☆文件上传
- ☆接口操作
- ☆扩展插件
- restful
- 工作
- 工作记录
- QQ登录
- 新浪登录
- 微信登录
- sphinx搜索
- 数据库
- MySQL
- ☆数据库操作
- ☆数据表操作
- ☆数据的操作
- 待修改
- 优化
- 存储引擎选择
- 列表类型选择
- 范式
- 慢日志查询
- 精准时间记录查询
- 计划任务 explain
- 索引
- 索与事务
- 查询缓存
- 存储过程
- 触发器
- 分区
- 分表
- sphinx
- 读写分离
- 搜索优化
- 网站静态化
- Memcache
- Mongodb
- Readis
- php使用redis
- 服务器
- Linux
- 目录结构
- 常用命令
- VIM编辑器
- 用户与用户组
- 权限管理
- 运行级别
- 网络模式
- ssh
- 软件安装
- 计划任务
- Ubuntu
- 编译PHP7.3
- 编译MySQL
- 编译Nginx
- apache虚拟机配置
- 安装composer
- Nginx
- Git