PHP的目录路径问题

在windows下,可以用“/”或者“”来表示目录层次,而linux下只能用“/”;同时在linux下没有盘符的概念,只有用“/”符号表示唯一的根目录。所以,用一个变量表示目录位置的话,用“/”最安全,在任何系统下都合法。但是有一个问题一定要注意,就是上面提到的windows盘符与linux根目录的问题

举例说明,$path = "/dir/",这是一个绝对路径,在linux下它很清楚地表示根目录下的dir目录;而在windows中呢,则表示当前盘符下的dir目录!,这里的“当前盘符”指的是web服务器所在的盘符!比如你的Apache装在D盘,则$path就表示D:/dir/。

为了不混淆,最好用$_SERVER['DOCUMENT_ROOT']加上相对路径来表示,比如:$path = "dir/",则绝对路径为:$_SERVER['DOCUMENT_ROOT'].$path。于是该目录位置是web目录树根下面的dir目录,推荐用这个全局变量来表示路径,不容易混淆。

也可用“.”表示当前目录的相对路径表示法,这个“.”代表的是脚本文件的当前目录,而不是web目录树的位置。而“..”表示上层目录。也是相对于脚本文件的位置。

原文地址:https://www.cnblogs.com/w10234/p/5620342.html