分かりやすく、使いやすく。

実行中のファイルのあるディレクトリ(フォルダ)のパスを取得する方法

スポンサーリンク

実行中のファイルが格納されているディレクトリ(フォルダ)のパスを取得するには __DIR__ という定数を使用します。

  1. サンプルコード
  2. 他のファイルを読み込む場合のサンプルコード


サンプルコード

サンプルコードと実行結果は次の通りです。

c:\temp\xyz\test1.php
1
2
3
4
5
//現在実行中のファイルがあるディレクトリ(フォルダ)のパスを取得。
$path = __DIR__;
 
//取得した値に改行(PHP_EOL)をつけて出力。
print 'test1.phpのあるディレクトリ(フォルダ) → ' . $path . PHP_EOL; 
test1.phpのあるディレクトリ(フォルダ) → C:\temp\xyz 

他のファイルを読み込む場合のサンプルコード

require などで別のファイルを読み込んだ場合、読み込まれた側で __DIR__ を参照すると、読み込まれた側のファイルがあるディレクトリ(フォルダ)のパスが返されます。

例えば test2.php から test1.php を読み込んだ場合のサンプルコードと実行結果は次の通りです。

c:\temp\test2.php
1
2
3
4
5
6
7
8
//現在実行中のファイルがあるディレクトリ(フォルダ)のパスを取得。
$path_test2 = __DIR__;
 
//取得した値に改行(PHP_EOL)をつけて出力。
print 'test2.phpのあるディレクトリ(フォルダ) → ' . $path_test2 . PHP_EOL;
 
//test1.phpを読み込んで実行。
require_once('./xyz/test1.php'); 
c:\temp\xyz\test1.php
1
2
3
4
5
//現在実行中のファイルがあるディレクトリ(フォルダ)のパスを取得。
$path = __DIR__;
 
//取得した値に改行(PHP_EOL)をつけて出力。
print 'test1.phpのあるディレクトリ(フォルダ) → ' . $path . PHP_EOL; 
test2.phpのあるディレクトリ(フォルダ) → C:\temp
test1.phpのあるディレクトリ(フォルダ) → C:\temp\xyz 

尚、絶対パスを取得したい場合は実行中のファイルの絶対パスを取得する方法を、ファイル名を取得したい場合は実行中のファイルのファイル名を取得する方法を参照してください。

スポンサーリンク
スポンサーリンク