PHP文件载入
一、介绍
- 在实际开发中,经常会在一个PHP文件中引入其他的文件,被引入的文件可以是HTML文档,也可以是PHP文件
二、语法
- require(文件名)和require_once(文件名)
- include(文件名)和include_once(文件名)
- 注意 : 如果引入的是函数,需要先引入再调用

- 引入文件时,主要有两种使用目的
①当前文PHP文件中有数据,想在被引用的文件(一般是HTML文档)中显示

②当前的PHP文件想使用另外一个文件(一般是PHP文件)中的功能性代码

三、引入路径的问题
- 在实际项目中,对于HTML文件,不允许用户直接请求,而是通过指向一个PHP文件,让PHP文件来引用这个HTML文件
- 当一个PHP文件引入一个HTML文档时,HTML文件本身也会引入一些其他的文件,比如图片文件、css文件、js文件等,这时会发生路径更改的问题,路径要以当前的PHP文件所在的位置,解决办法有两个,一个是修改相对路径,一个是改成域名路径
- include语句本身可以使用绝对路径,但是引入的HTML文件中,如图片文件、css文件、js文件,是不能使用绝对路径的
四、include与require的区别
- include在引入文件时,如果被引入文件不存在则会报错,但是程序还会继续向下执行,require不会继续向下执行,会被中断
- require一般用于引入PHP文件,因为PHP文件里面一般书写的是功能性代码,include一般用于引入HTML文档
- include_once和require_once每次在引入文件时,都会检查所要引入的文件之前有没有被引入,require和include没有这样的检查功能
- 由于类似于定义常量定义函数这种操作不能执行多次,所以require_once更加合适载入这种文件

五、__FILE__和__DIR__
__FILE__用于获取文件所在的完整文件名,__DIR__用于获取文件所在的路径
- __FILE__和__DIR__并不会被引入后更改,永远是所在的文件名与文件夹名
PHP文件载入的更多相关文章
- UltraISO制作Ubuntu14.04 64bit到U盘文件载入不完整
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/zinss26914/article/details/37728251 前言 今天新买的Thinkpa ...
- [zz]【整理】Python中Cookie的处理:自动处理Cookie,保存为Cookie文件,从文件载入Cookie
http://www.crifan.com/python_auto_handle_cookie_and_save_to_from_cookie_file/ #!/usr/bin/python # -* ...
- PHP文件载入和载入路径
一.文件载入 所谓的文件的载入,就是指将需要的目标文件的代码载入到当前的位置上,从某种意义上来说,文件载入也是一种流程控制! 文件载入的主要目的是体现网站的分层设计,因为不同的页面有很多相同的区域(相 ...
- 在 APK 中找不到对应的 securityguard***.so 文件或者 so 文件载入出错
1.解压查看你的apk是不是将so打进去了,如果没有打进入查看自己的jnilibs是否指定 2.查看手机是否是64的手机.因为百川的安全包没有64的支持,所以目前是以兼容包的形式给的包.如果第三方有6 ...
- php循环,die/exit脚本执行控制,文件载入及错误控制
循环控制 大部分和c/java同样 for循环 while循环 do while循环 foreach循环(特有) 循环中断 : 1.break: 用于全然停止某个循环,让运行流程进入到循环语句后面的语 ...
- ThinkPHP---thinkphp会话支持和文件载入
[一]会话控制 会话支持一般指cookie和session,在ThinkPHP里为了方便开发,封装了cookie和session方法. (1)session方法 在函数库封装了session方法 se ...
- python从文件载入字典
data = np.load('dict_.npy') data = data.item() 不加最后一句,data不是字典类型
- 【重要】U3D存放本地游戏存档——不同平台载入XML文件的方法——IOS MAC Android
在PC上和IOS上读取XML文件的方式略有差别,经测试,IOS上不支持如下方法载入XML文件: XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load( ...
- (转)U3D不同平台载入XML文件的方法——IOS MAC Android
自:http://www.cnblogs.com/sifenkesi/archive/2012/03/12/2391330.html 在PC上和IOS上读取XML文件的方式略有差别,经测试,IOS上不 ...
随机推荐
- U盘改造计划之PE、kali、U盘三合一
最强U盘攻略之一 前一段时间朋友买电脑问了我一些问题,我突然发现U盘怎么这么便宜,128G金士顿,140?!!!我16年买的可是240啊.买贵一百块,我好方啊.但是我的U盘,我是不会屈服做一个普通的U ...
- Linux设置普通用户无密码sudo权限
配置普通用户无密码sudo权限: root用户进入到Linux系统的/etc目录下 cd /etc 将sudoers文件赋予写的权限 chmod u+w /etc/sudoers 编辑sudoers文 ...
- kafka服务端实验记录
kafka单机实验: 环境准备: 1.下载kafka,zookeeper,并解压 wget http://mirror.bit.edu.cn/apache/kafka/2.3.0/kafka_2.11 ...
- go 计算文件行
package main import ( "bufio" "fmt" "os" ) func main() { //判断命令行参数,小于两 ...
- python ID3决策树实现
环境:ubuntu 16.04 python 3.6 数据来源:UCI wine_data(比较经典的酒数据) 决策树要点: 1. 如何确定分裂点(CART ID3 C4.5算法有着对应的分裂计算方式 ...
- 接口标记为@ResponseBody却不进入ResponseBodyAdvice
一.背景: 我们的接口为了统一,在ResponseBodyAdvice中对返回值做统一处理,默认添加了errorNo和errorInfo字段返回. 最近同事改接口代码的时候,发现接口返回值是空的.乍一 ...
- Java文件字符流
1.字符编码(Character encoding)和编码集(Character set) 字符编码(Character encoding)是将字符转为字节或字节数组的过程. 字符集(Characte ...
- CentOS下安装mysql-server提示No package mysql-server avaliable
出现这个原因是CentOS使用mariadb-server代替掉了mysql-server,因此如果想使用mysql-server需要先更新仓库地址,使用以下命令: wget http://repo. ...
- 批量改主机名报错:Address 192.168.43.117 maps to bogon, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
ssh连接批量修改主机名报出以下提示: [root@bqh-nfs- ~]# vim modfilyhostname.sh [root@bqh-nfs- ~]# sh modfilyhostname. ...
- sqlserver存储过程里传字段、传字符串,并返回DataTable、字符串,存储过程调用存储过程。
经常需要查一些信息, 想写视图来返回数据以提高效率,但是用试视图不能传参,只好想到改存储过程.记录一下语法,方便以后做项目时候想不起来了用. 1:传字段返回datatable 2: 传字段回一串字符 ...