PHP

【PHP】絶対パスの取得方法(__FILE__,__DIR__,dirname)

本記事では、PHPで絶対パスを取得することができる__FILE__と__DIR__とdirname関数の使い方について解説しています。

ITエンジニア特化の転職サイト!
自社内開発求人に強い【クラウドリンク】

先輩くん
先輩くん
年収、休日数、労働環境等クラウドリンクが審査し、これらを通過した優良求人情報のみ紹介しているよ!
後輩ちゃん
後輩ちゃん
100%自社内開発の求人だから、SESのように職場環境が変わらないのがいいね!
簡単30秒で無料登録!

PHPの学習におすすめ参考書
気づけばプロ並みPHP 改訂版–ゼロから作れる人になる!

本書情報
著者谷藤 賢一
発売日2017/3/6
ページ数331ページ
Kindle版
レビュー
(Amazon)
(168件)

__FILE__の使い方

__FILE__では、対象ファイルまでの絶対パスを取得してくれます。関数ではないので、引数などの指定は必要ありません。

<?php
    echo __DIR__;
?>
__FILE__の実行結果
__FILE__の実行結果

実行結果を確認すると、index.phpまでの絶対パスが取得できていることが確認できます。

__DIR__の使い方

__DIR__では、対象ファイルが置かれているディレクトリまでの絶対パスを取得してくれます。__FILE__と同様に関数ではないので、引数などの指定は必要ありません。

<?php
    echo __FILE__;
?>
__DIR__の実行結果
__DIR__の実行結果

実行結果を確認すると、index.phpが置かれているディレクトリが絶対パスが取得できていることが確認できます。

dirnameの使い方

dirnameでは、__DIR__と同様に対象ファイルが置かれているディレクトリまでの絶対パスを取得してくれます。

__DIR__との違いは、関数であるため引数を指定することが出来ます。dirnameは2つの引数を設定することができ、第一引数にはパスを指定し、第二引数には何個上のディレクトリを対象にするかを指定します。第二引数の初期値は1であり、これは第一引数で指定したパスのディレクトリを指します。

<?php
    echo dirname(__FILE__, 2);
?>
dirnameの実行結果
dirnameの実行結果

実行結果を確認すると、index.phpファイルが置かれているtestディレクトリの一つ上の絶対パスを取得することが出来ました。これはdirnameの第二引数で2を指定しているため、__FILE__で取得したディレクトリの一つ上のディレクトリまでの絶対パスを取得するという意味になります。

ブログランキング・にほんブログ村へ PVアクセスランキング にほんブログ村