4

これがどれほど簡単に解決できるかはわかりませんが、何か間違ったことをしていると思います。私はPHPが初めてなので、ご容赦ください。

PHP の学習を開始したとき、私は常にすべてのプロジェクト ファイルを同じフォルダーに配置しindex.php、次のようにすべてを含めました。

<?php
include('./translation.php');
?>

その後、経験を積んでスキルが向上するにつれて、学習の過程で、フォルダーの使用を開始し、ファイルをサブフォルダーに配置する必要がありました。最終的に、ファイルを次のように含めることに成功しました。

<?php
include('../translation.php');
?>

サブサブフォルダーの使用を開始することにしたとき、問題のないコーディングは予想外の方向に進みました。すべてのファイルをファイル構造のさらに奥深くに配置した後、次を使用して、それらを含めることができなくなったことにショックを受けました。

<?php
include('.../translation.php');
?>

今、私は迷っています。私は何を間違えましたか?プロジェクトに 2 ディレクトリより深いファイルを含めることはできないということを理解する必要がありますか? 別のファイル システムの使用を開始する必要がありますか?

4

4 に答える 4

10

概念が間違っています。

  • .現在のディレクトリを表します
  • ..親ディレクトリを表します

これらは、ファイル システムがファイルとブラウズ深度を追跡する方法です。

...ただし、ディレクトリの変更には使用できません。深くなるにつれて、使用する必要があります

例えば:

include('../../translation.php');

現在のディレクトリの 2 レベル外側のファイルが含まれます。それはおそらくあなたがやろうとしていたことです。

于 2012-04-08T17:26:06.867 に答える
4

インクルードは次のとおりです。

<?php
include('../../translation.php');
?>

「上」の各レベルには独自の が必要../です。

たとえば、次のディレクトリがあるとします。

a
   a1
      filex.php
   a2
b
   b1
      filey.php

filex.php に filey.php を含めたい場合は、次のようにします。

<?php
include('../../b/b1/filey.php');
?>

アップ/アウト2回、ダウン/イブ2回

基本的に、レベルを「下げて」フォルダに移動したいときはいつでも、フォルダの名前の後にスラッシュを付けます。ただし、「上」または現在のフォルダーから(現在のフォルダーの親フォルダーに)移動するには、..その後にスラッシュを続けます

于 2012-04-08T17:26:26.027 に答える
-1

このフォルダのツリーを想定しましょう。

-> site
      -> public_html (Inside the site folder)
            ->  index.php (Inside the public_html folder)
      -> translation.php (Inside the site folder)

index.php で使用するだけですinclude "../translation.php";

translation.php がサイト フォルダーと同じフォルダーにある場合は、include "../../translation.php";

ただし、translation.php が index.php と同じフォルダーにある場合は、次のように含める必要があります。include "translation.php";

于 2012-04-08T17:28:47.927 に答える