2008-10-08 23 views

Antwort

28

Absolute Pfade beginnen mit/und beziehen sich auf einen Speicherort vom Stamm der aktuellen Site (oder des virtuellen Hosts).

Relative Pfade beginnen nicht mit/und beziehen sich auf eine Position von der tatsächlichen Position des Dokuments, auf das verwiesen wird. http://foo.com/site/

Absoluter Pfad

Beispiele, ist Wurzel unter der Annahme, unabhängig davon, wo wir auf der Website sind

/foo.html 

zu http://foo.com/site/foo.html

Relative Pfad beziehen, vorausgesetzt, die enthält Link befindet sich in http://foo.com/site/part1/bar.html

../part2/quux.html 

beziehen sich auf http://foo.com/site/part2/quux.html

oder

part2/blue.html 

zu http://foo.com/site/part1/part2/blue.html

+0

Schön und einfach zu verstehen - Danke :) – radbyx

3

Wichtig zu beachten, dass relative Pfade auch subjektiv sind.

dh:

<?php 
    #bar.php 
    require('../foo.php'); 
?> 
 
/dir/bar.php 
/foo.php   # prints a 
/dir/foo.php # prints b 
/dir/other/ # empty dir 
 
$ pwd 
>/
$ php dir/bar.php 
>/+ ../foo.php == /foo.php 
> prints a 
$ cd dir 
$ php bar.php 
> /dir + ../foo.php = /foo.php 
> prints a 
$ cd other 
$ php ../bar.php 
> /dir/other + ../foo.php = /dir/foo.php 
> prints b 

Dies einige ziemlich verwirrend Situationen schaffen können, vor allem wenn Sie viele Dateien mit releative Referenzen und mehrere mögliche Orte, die als „Einstiegspunkt“ wirken kann, dass steuert, wie der relative Pfad relativ ist.

In solchen Situationen sollte man den absoluten Pfad manuell basierend berechnet auf einem bekannten festen, das heißt:

<?php 
    require(realpath(dirname(__FILE__) . '/../foo.php')) 

oder

<?php 
    require(SOMECONSTANT . '/relative/path.php' ); 

oder

<?php 
    require($_SERVER['DOCUMENT_ROOT'] . '/relative/path.php'); 
1

Durch Versuch und Irrtum Ich habe festgestellt, dass der Startpunkt eines Pfades in Tomcat der Ordner "Webapps" ist. Wenn Ihr Java-Code versucht, ../somefile.txt zu lesen, dann wäre der absolute Pfad zu dieser Datei% TOMCAT_HOME%/webapps /../ somefile.txt dh% TOMCAT_HOME%/webapps/somefile .txt