1 HTML文件引用路径

引用一个位于同级目录的 HTML 文件,只需直接使用文件名,比如my-p_w_picpath.jpg。

引用一下子目录的文件,在路径前写下目录名并加一个斜杠,比如subdirectory/my-p_w_picpath.jpg。

引用一个父目录的 HTML 文件,加上两个点。举个例子,如果index.htmltest-site子目录而my-p_w_picpath.pngtest-site处于同级目录,你可以使用../my-p_w_picpath.png 在index.html内引用my-p_w_picpath.png

可以组合随意以上方法,比如../subdirectory/another-subdirectory/my-p_w_picpath.png.


2 PHP文件引用路径

相对路径需要一个参考目录才能确定文件的最终路径,在包含解析中,不管包含嵌套多少层,这个参考目录是程序执行入口文件所在目录。

示例1

A中定义 require './b/b.php'; // 则B=[SITE]/app/test/b/b.php
B中定义 require './c.php'; // 则C=[SITE]/app/test/c.php 不是[SITE]/app/test/b/c.php


绝对路径的比较简单,不容易混淆出错,require|inclue 的就是对应磁盘中的文件。

require '/wwwroot/xxx.com/app/test/b.php'; // Linux中
require 'c:/wwwroot/xxx.com/app/test/b.php'; // windows中
dirname(__FILE__)计算出来的也是一个绝对路径形式的目录,但是要注意__FILE__是一个Magic constants,不管在什么时候都等于写这条语句的php文件所在的绝对路径,因此dirname(__FILE__)也总是指向写这条语句的php文件所在的绝对路径,跟这个文件是否被其他文件包含使用没有任何关系。

示例1

A中定义 require '../b.php'; // 则B=[SITE]/app/b.php
B中定义 require dirname(__FILE__).'/c.php'; // 则B=[SITE]/app/c.php