16

私は自分でPHPをプログラミングして学習するのが初めてです。次のファイルの相対パスについて 2 つの質問があります

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

上記のコードの相対パスに関する私の質問は次のとおりです。

  1. 私が理解していること$_SERVER[DOCUMENT_ROOT]は、異なるサーバー上のhtdocs、www、またはpublic_htmlなどのファイル構造のルートディレクトリを指しています。私が正しく理解しているかどうかを教えてください。
  2. 上記のパスにある 2 つのドットは何を意味していますか?

ありがとうございました

4

4 に答える 4

16

..は親ディレクトリを意味するので、1レベル上に移動し、ドキュメントルートの兄弟ディレクトリに移動しますorders

于 2012-08-22T04:52:07.013 に答える
8

..は「1つのディレクトリに移動する」という意味です。

したがって、DOCUMENT_ROOTが次の場合:

/usr/docs/document_root

あなたの道は次のようにうまくいきます:

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

..は「1つ上がる」という意味なので、実際には次のようになります。

/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

2つのドットが、通常は親フォルダを指す1つのディレクトリレベルだけ下がると思います。想像してみ$_SERVER[DOCUMENT_ROOT]てくださいroot

root/
  index.php   // You are here

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