PHPについて質問です。

カレントディレクトリのディレクトリ名だけ抽出するにはどうしたらよいのでしょうか?
たとえば、「C:\xampp\htdocs\hoge\index.php」だとしたら、
「hoge」というディレクトリ名だけを抽出したいということです。
よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:2008/07/08 22:51:09
  • 終了:2008/07/09 00:14:30

回答(2件)

id:GoldenDawn No.1

GoldenDawn回答回数426ベストアンサー獲得回数812008/07/08 23:22:29

ポイント35pt
$path = 'C:\xampp\htdocs\hoge\index.php' ;
$current_dir = basename(dirname($path)) ;

echo $current_dir ;
id:taroemon

ご回答ありがとうとうございます。

うまくいきました。

2008/07/08 23:36:47
id:tezcello No.2

tezcello回答回数459ベストアンサー獲得回数692008/07/08 23:57:42

ポイント35pt

> たとえば、「C:¥xampp¥htdocs¥hoge¥index.php」だとしたら、

本当に 'C:¥xampp¥htdocs¥hoge¥index.php' が与えられるのだとしたら

$str = 'C:¥xampp¥htdocs¥hoge¥index.php';
preg_match('!.+¥¥¥¥]([^¥]+)¥¥¥¥.+$!', $str, $res);
var_dump($res);

で、$res に hoge が返ります。


ですが、この例はカレントディレクトリが与えられたのでは無く、ファイル名ですよね。

あるファイル名(フルパス)から、ファイルの存在するディレクトリ名を得るのであれば、PHP 上では 'C:/xampp/htdocs/hoge/index.php' となっていると思いますが、問題ありませんか?


カレントディレクトリを得るのであれば、

var_dump(basename(getcwd()));

で良いと思います。

id:taroemon

ご回答ありがとうございます。

おっしゃるとおりです。

質問の仕方が悪かったようです。すみません。

いただいた「var_dump(basename(getcwd()));」でうまくいきました。

2008/07/09 00:14:14

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません