【Amazon】人気の商品が日替わりで登場!
毎日お得なタイムセール!商品をみる

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

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

PHPの学習におすすめ書籍
独習PHP 第4版
総合評価
( 5 )
メリット
  • PHPの基本構文からクラス・データベース連携・セキュリティまで学べる
  • PHPによるWebアプリ開発の基礎・基本テクニックを学べる
楽天ブックス
¥3,740 (2024/04/23 02:10時点 | 楽天市場調べ)
先輩くん

Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!

後輩ちゃん

初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!

全プログラマー必見!
変数名/関数名にもう悩まない!
リーダブルコード
総合評価
( 5 )
メリット
  • 美しいコードが書けるが自然と書けるようになる
  • 他の開発者が理解しやすいコードになる
著:Dustin Boswell, 著:Trevor Foucher, 解説:須藤 功平, 翻訳:角 征典
¥2,640 (2023/07/23 02:48時点 | Amazon調べ)
目次

__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アクセスランキング にほんブログ村 FC2 Blog Ranking

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次