2011-03-11 22 views
7

में कनवर्ट करें क्या कोई वेब यूआरएल पूर्ण फ़ाइल सिस्टम पथ (ओएस से स्वतंत्र) में कनवर्ट करने का कोई तरीका है?यूआरएल को फाइल सिस्टम पथ

उदाहरण के लिए: मैं एक यूआरएल /images/test.jpg (http://www.example.com/images/test.jpg) है और मैं प्राप्त करने की आवश्यकता:

  • `c: \ पथ \ \ छवियों \ webroot करने के लिए \ test.jpg`` विंडोज पर,
  • लिनक्स पर /var/path/to/webroot/images/test.jpg

PHP में ऐसा करने का कोई तरीका?

उत्तर

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

विचार अच्छा है, लेकिन आपको अग्रणी '/' को हटा देना चाहिए या इसके सामने '.' रखना चाहिए। – Lekensteyn

+0

बहुत बहुत धन्यवाद, यह काम करता है। बेशक मुझे केवल '.' का उपयोग करना होगा यदि मेरी PHP फ़ाइल वेबूट निर्देशिका में है, अगर यह उपनिर्देशिका में है या मुझे '..' – salgua

+2

यह मैन्युअल लिंक http://php.net/manual/en/function की आवश्यकता है .realpath.php –

-1

ऐसा लगता है कि आप realpath फ़ंक्शन चाहते हैं।

3

यह आपको /images/test.jpg दे देंगे:

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

कहाँ $_SERVER['DOCUMENT_ROOT'] आप दस्तावेज़ रूट निर्देशिका है जिसके तहत वर्तमान स्क्रिप्ट पर कार्य कर रहा है देता है।

संबंधित मुद्दे