有什么区别
require("../classes/M8.php");和
require("/../classes/H8.php");将如何包含路径将有所不同?
发布于 2013-10-15 12:38:02
路径开始处的/将指向根目录。这就是所谓的绝对路径。其他内容都是相对于当前文件夹的。这就是所谓的相对路径。
IBM描述了这里的差异。
绝对路径名称表示从/(根目录)向下的目录或文件的完整名称。无论您在文件系统中的位置如何,都可以通过指定目录或文件的绝对路径名来找到它。绝对路径名以斜杠(/)开头,斜杠(/)是表示根目录的符号。路径名/A/D/9是9的绝对路径名。第一个斜杠(/)表示/(根目录)目录,这是搜索的起点。路径名称的其余部分将搜索指向A,然后指向D,最后指向9。 与全路径名称不同,相对路径名根据当前工作目录指定目录或文件。对于相对路径名,可以使用符号点(..)若要在文件系统层次结构中向上移动,请执行以下操作。圆点(..)表示父目录。因为相对路径名指定从当前目录开始的路径,所以它们不以斜杠(/)开头。相对路径名用于指定当前目录中文件的名称,或文件系统中当前目录级别之上或之下的文件或目录的路径名。如果D是当前目录,则访问10的相对路径名是F/10。但是,绝对路径名总是/A/D/F/10。另外,访问3的相对路径名是./../B/3。
例如,假设您正在使用这种结构,并且在MyScript.php中工作
Home
-- Foo
-- Example.php
-- Bar
-- Scripts
-- MyScript.php如果希望从Example.php文件夹中包含Foo,可以指定:
../../Foo/Example.php /* Relative path: ..Bar/..Home (Root)/Foo/Example.php */或者:
/Foo/Example.php /* Absolute path: Home (Root)/Foo.Example.php */发布于 2013-10-15 12:36:42
/..是相对于服务器根的路径。
../是相对于当前脚本文件夹的路径。
我看到有人要求提供更多的信息。
如果您位于服务器上的文件夹中,请说:
/usr/local/apache2/www/example.php
然后,可以将example.php中的引用作为绝对路径,因此相对于服务器的根目录:/usr/local/apache2/隐含/凭证。
或者可以使用相对于当前文件的路径来访问相同的文件:./隐含/凭证。请注意,每组../都会将服务器文件夹结构中的一个目录移到更高的位置。
https://stackoverflow.com/questions/19381382
复制相似问题