2011-03-11 16 views
7

ウェブURLを絶対ファイルシステムパス(OSとは独立している)に変換する方法はありますか?URLをファイルシステムパスに変換する

例えば:私は、URL /images/test.jpghttp://www.example.com/images/test.jpg)を持っていると私は取得する必要があります:

  • `cを:画像\ \ Webルートに\パス\を\ test.jpg`` Windows上で、
  • Linuxの場合は/var/path/to/webroot/images/test.jpgです。

PHPでこれを行う方法はありますか?

答えて

5
$str = "/images/test.jpg"; 
$str = realpath("." . $str); 
+1

アイディアは良いですが、先頭の '/'を削除するか、その前に '.'を付ける必要があります。 – Lekensteyn

+0

ありがとうございます、それは動作します。もちろん、私のPHPファイルがwebrootディレクトリにある場合にのみ '.'を使用しなければなりません。サブディレクトリにある場合、' ..'が必要です。 – salgua

+2

マニュアルリンクhttp://php.net/manual/en/function .realpath.php –

-1

あなたがrealpath機能をしたいように聞こえます。

3

これは、あなた/images/test.jpgを与える:$_SERVER['DOCUMENT_ROOT']はあなたの現在のスクリプトが実行されているドキュメントルートディレクトリを与える

$path = str_replace($_SERVER['DOCUMENT_ROOT'], '', $path) 

関連する問題