• ベストアンサー

上位ディレクトリ名(フォルダ名)を取得するには?

phpファイルが入っている、2階層上位のディレクトリ名(フォルダ名)を取得したいと思っています。 例 http://~.com/aaa/bbb/ccc/test.php test.phpが本体です。 ここから2階層上位のディレクトリ名、ここでは「bbb」を取得するような事はできないでしょうか? test.phpの中に、2階層上位のディレクトリ名を記述したいと思っています。 具体的に言うと、 $name = "●●●"; 上記の●●●に、2階層上位のディレクトリ名を入れたいです。 同じようなファイルが多数あり、「bbb」には様々なフォルダ名があり、test.phpの1つ1つを書き換えるのに手間がかかるので、ディレクトリ名を自動的に取得できれば助かります。 phpの知識がほとんどないため、お力をお借りできればと思い、質問させて頂きました。 アドバイスをお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • asahina02
  • ベストアンサー率47% (95/202)
回答No.1

自URL取得してそれを / で分割(split)する。 で、後ろから3つめがそれにあたるのではないかと思われます。 $list = split( "/", $_SERVER[ SCRIPT_NAME ] ); $name = $list[ count( $list ) - 3 ];

Cuty_Cat
質問者

お礼

ご回答ありがとうございます。 記述して頂いたスクリプトを、そのままコピーして試してみた所、私が思っていたように上位のディレクトリ名を取得する事ができました。 これでかなりの手間が省けて、作業も先に進める事ができそうです。 適格にアドバイスをして頂き、大変感謝しております。 ありがとうございました。

その他の回答 (1)

  • php504
  • ベストアンサー率42% (926/2160)
回答No.2

自分なら$_SERVER["SCRIPT_NAME"]などを加工して取り出すかな "/"でexplodeしてarray_reverse で配列ひっくり返して3番目(添え字は[2])を取り出せばいいでしょう。 他からインクルードされるファイルなら__FILE__を使った方がいいかもしれませんがOSによってディレクトリの区切りが変わるので注意しないといけないですね。

参考URL:
.

関連するQ&A