一、路径
1、相对路径
相对路径指以.开头的路径;
./a/a.php
(相对当前目录)
../common.inc.php
(相对上级目录),
2、绝对路径
绝对路径是以 /
开头或者windows下的C:/
类似的盘符开头的路径,全路径不用任何参考路径就可以唯一确定文件的最终地址。
//unix
/apache/wwwroot/site/a/a.php
//windows
c:/wwwroot/site/a/a.php
例子
有一个 index.php 文件存放在 B 文件夹,B 的上级目录是 A,里面有个 a.php 文件,下级目录有个C 文件夹,里面有个c.php 文件
A-->
| a.php
| B-->
| index.php
| C-->
| c.php
index.php 文件
a.php:../a.php
c.php:./C/c.php
3、需要掌握的
- 魔术常量
__FILE__
__DIR__
- 预定义常量
PHP_EOL
DIRECTORY_SEPARATOR
- pathinfo — 返回文件路径的信息
- dirname()
- basename()
- parse_url()
文件包含语句
include
include "functions.php";
一般是放在流程控制的处理部分中使用,将文件内容引入。PHP程序在遇到include语句时,才将它读进来,这种方式可以把程序执行时的流程简单化,便于复用代码
include在引入不存在文件时产生一个警告且脚本还会继续执行,执行时需要引用的文件每次都要进行读取和评估,且有返回值
if (false) {
include 'functions.php'; //functions.php文件没有引入
}
include 'function.php';
echo '上面的文件本不存在,但是我依然会执行';
$result = include "QueryPhone.php";
if(!empty($result)){
echo '文件引入成功';
}else{
echo '文件引入失败';
}
include_once
include_once "functions.php";
加了 _once
之后表示文件已引入的将不再引入。include_once引入文件的时候,如果碰到错误会给出提示并继续运行下边的代码
它的使用与include一样,只是只引入一次
require
require "functions.php";
一般是放在PHP文件的最前面将文件内容引入,PHP会将require的文件内容引入成功,然后才开始执行后面的代码
require在引入文件失败时会提示且脚本会被中断执行
require 'func.php';
echo '上面的文件引入失败,我就么有显示的机会';
require_once
require_once 'functions.php';
同require,不同的是只引入一次
综合实例
a.php
<?php
echo 'hello jack';
引入
include 'a.php';
require 'a.php';
include_once 'a.php';
require_once 'a.php';
下面交换一下
include_once 'a.php';
require_once 'a.php';
include 'a.php';
require 'a.php';
注意
从理论上说,include和require后面加不加括号对执行的结果并没有什么区别,但是加上括号效率相对会较低,所以通常后面能不加括号就不要添加括号了