[PHP-users 24563] Re: 現在のパスから上位ディレクトリパスを取得
SHIRAFU Makoto
escvel @ terra.dti.ne.jp
2005年 2月 16日 (水) 19:44:30 JST
こんにちは、しらふです。
Wed, 16 Feb 2005 18:06:13 +0900に
halt <halt.hde @ gmail.com> さんから頂いた、
"Re: [PHP-users 24553] R e: 現在の パス から上 位ディレクト リパスを取得"へのお返事です。
> print ( dirname('/home/user/public_html/abc/') . '/');
> > お手軽にできる関数がたくさん用意されてるのが
> > PHPの利点です。車輪の再開発はやめましょう。
haltさんの手法だと、与えられた文字列がディレクトリパスの場合、
上位のディレクトリを求めることは出来ますが、与えられた文字列が
ファイル名を含むフルパスの場合、上位のディレクトリは求められな
いのではないでしょうか?
たとえば、
■テストケース1(ディレクトリパス)
【処理対象】
/home/user/public_html/abc/
【処理結果】
/home/user/public_html/
■テストケース2(フルパス)
【処理対象】
/home/user/public_html/abc/a.txt
【処理結果】
/home/user/public_html/abc/
テストケース2だと、上位ディレクトリではなく、カレントディレク
トリが返ってきていませんか?
PHPのマニュアルを見ると、
| dirname
| (PHP 3, PHP 4 , PHP 5)
|
| dirname -- パス中のディレクトリ名の部分を返す
とあって、挙動は合っているように思います。
となると、寺澤さんの「現在のパスから」という要求仕様と微妙に
異なるような気がします。
もっとも、寺澤さんの要求仕様が「ディレクトリパス」だけでした
ら、合致していると思いますが…(^^;
==== * ==== * ==== * ==== * ==== * ==== * ==== * ====
これがウワサのGmailですか…。
MLで見ると、噂通りに妙なエンコードをしていますね。
(特にサブジェクトなどは見た目でわかっちゃいますね)
他のMLで見たのですが、ちょっと古いメーラだと異常終了させてし
まうことがあるとか。。。
かつての半角カナのようにMLが受け入れるか否かのポリシー/マナー
が必要になっているように思います。 > 管理人の方
■参考資料
下記のURL(メッセージ番号7971から始まるスレッド)が、その議論で
す。
(認証が要求されますが、ダイアログに説明があります。)
http://memo.st.ryukoku.ac.jp/archive/200412.month/thread.html
+--------------------------------------------------------------------+
| From : SHIRAFU Makoto |
| E-mail : escvel @ terra.dti.ne.jp |
| Web Site : http://www.terra.dti.ne.jp/~escvel/ |
| Fingerprint : D336 5CE0 6D5E 106A 47BF 5FB7 739B B0FE 240B EEB7 |
+--------------------------------------------------------------------+
PHP-users メーリングリストの案内