16

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

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

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

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

谢谢你

4

4 回答 4

16

..表示父目录,因此它向上一层进入文档根目录的同级目录,称为orders.

于 2012-08-22T04:52:07.013 回答
8

.. 表示“上一个目录”。

因此,如果您的 DOCUMENT_ROOT 是:

/usr/docs/document_root

你的路径可以:

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

由于 .. 的意思是“上升一个”,它实际上变成了:

/usr/docs/orders/orders.txt

您可以看到它如何“擦除”“document_root”部分。

于 2012-08-22T04:52:18.560 回答
3

..文件夹。

所以,如果$_SERVER[DOCUMENT_ROOT]碰巧是/var/www/,以下将是等价的:

"$_SERVER[DOCUMENT_ROOT]/../orders/orders.txt"
"/var/orders.txt"
于 2012-08-22T04:52:36.177 回答
2

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

root/
  index.php   // You are here

orders/
  orders.txt  // You are reading this file
于 2012-08-22T04:52:59.170 回答