相对文件路径中的点是什么意思


What do the dots mean in relative file path?

我是一个编程和学习php的新手。关于以下文件的相对路径,我有两个问题

$fp = fopen ("$_SERVER[DOCUMENT_ROOT]/../orders/orders.txt", 'w');

我对上面代码中的相对路径的问题是:

  1. 据我所知,$_SERVER[DOCUMENT_ROOT]指向不同服务器上的文件结构(如htdocs、www或public_html)的根目录。请指导我是否理解正确
  2. 上面路径中的两个点是什么意思

谢谢

..表示父目录,因此它会向上一级进入文档根目录的一个名为orders的同级目录。

。。意思是"上一个目录"。

因此,如果您的DOCUMENT_ROOT是:

/usr/docs/document_root

你的路径是:

/usr/docs/document_root/../orders/orders.txt

自。。意思是"上升一个",实际上变成了:

/usr/docs/orders/orders.txt

您可以看到它是如何"擦除"document_root"部分的。

..文件夹。

因此,如果$_SERVER[DOCUMENT_ROOT]恰好是/var/www/,则以下内容等效:

"$_SERVER[DOCUMENT_ROOT]/../orders/orders.txt"
"/var/orders.txt"

我喜欢认为这两个点将您降低一个目录级别,通常指的是父文件夹。假设$_SERVER[DOCUMENT_ROOT]root:

root/
  index.php   // You are here
orders/
  orders.txt  // You are reading this file

相对路径是指相对于当前目录的位置。相对路径使用两个特殊符号,一个点(.)和一个双点(..),它们转换为当前目录和父目录双点用于在层次结构中向上移动