2012-02-01 8 views
0

を短くし、トップレベルのディレクトリを見つけますか?は、私はおそらくパスを見つける回り道であるこれを持ってパスPHP

私のサイトにはサブドメインがあります。 myFile.phpが配置されているのはここです:

http://sub.mydomain.com/dir/

+0

ドゥあなたはトップレベルのディレクトリを意味しますか? – webbiedave

+0

はい、申し訳ありません。変化する被写体。 – Yahreen

答えて

0

時々getcwdが有用であることができます。

require_once getcwd() . '/../../myFile.php' ; 
1

私はあなたがやろうとしている正確にわからないんだけど、多分$_SERVER['DOCUMENT_ROOT']はあなたを助けるかもしれません。

0

あなたがPHP 5.3(またはそれ以上)を持っている場合、あなたは__DIR__を使用することができますが:

$parent_dir = __DIR__.'/../myFile.php'; 

あなたの例では、あなたがそれに追加することができますので、さらにアップカップルのレベルに行くようだ:

$parent_dir = __DIR__.'/../../myFile.php'; 

__DIR__は、それを呼び出すファイルが置かれているディレクトリを評価するマジック定数です。

other answerで強調表示されているように、ルートの後ろにある場合、$_SERVER[DOCUMENT_ROOT]はサーバー(Apacheなど)の設定で定義されているパスを提供します。

1

私はまた、あなたが何をしようとして正確にわからないんだけど、おそらくこのような何かがあなたのためにそれを短縮します:

$pathArr = explode("/", __DIR__); 
var_dump($pathArr); 
// previous was for debugging to see what gets put where, remove this once you sort it out. 

// list($level1, $level2, ...) = explode("/", __FILE__); 
+0

ちょっと! OPが探していたものなのかどうかは分かりませんが、私が探していたものは間違いありません! '/ hello/this/is/a/long/path/file.php'から" hello "を見つける必要があり、それを行うための短い方法の1つと思われます。 :) – kiradotee

関連する問題