Supportnet Computer
Planet of Tech

Supportnet / Forum / Skripte(PHP,ASP,Perl...)

Funktion gesucht, die aus relativem Pfad einen Absoluten macht





Frage

Hallo! Wie schon gesagt, ich suche nach einer PHP-Funktion, die aus einer Basisadresse und einer dazu relativen Adresse eine absolute Adresse macht. Bei php.net hab ich bisher nur realpath() gefunden. Nur ist diese anscheinend nur für lokale Adressen relativ zum Arbeitsverzeichnis. Ich suche aber etwas für Webadressen. Beispiel: http://example.com/sub1/sub2/sub3/sub4/index.htm + ../../images/1.jpg = http://example.com/sub1/sub2/images/1.jpg Ist zwar keine grosse Programmieraufgabe, aber trotzdem möchte ich nicht wieder etwas selbst machen, um irgendwann danach zu merken, dass es das in PHP schon fertig gibt. ;-) Deshalb frag ich lieber vorher mal euch Profis mit dem Überblick über die Millionen PHP-Funktionen. ;-) LG Bruni

Antwort 1 von sTk

Hi,

Schau mal in diesen Beitrag, da gehts um das gleiche Thema!

Gruß, Steffen

Antwort 2 von _Bruni_

Hi Steffen! :-)

Das ist leider ein Mißverständnis! Mir geht es um etwas anderes. Ich hätte wohl dazuschreiben sollen, dass ich PHP clientseitig einsetze und nicht, wie üblich, serverseitig. ;-)
Es geht dabei um ein Skript fürs Offlinebrowsen. Wenn dieses die Seite "http://example.com/sub1/sub2/sub3/sub4/index.htm" herunterlädt und dann im Dokument einen Link zu "../../images/1.jpg" findet, muss es, um dieses Seitenelement laden zu können, daraus ja die absolute Webadresse "http://example.com/sub1/sub2/images/1.jpg" machen.

LG Bruni

PS: An die Profis: Ja, ich weiss, man muss auch noch schauen, ob ein Base-Befehl einen anderen Basispfad vorgibt. ;-)

Antwort 3 von Nessus

Hi,

*kopfkratz*
Du weißt, das PHP eine serverseitige Scriptsprache ist?
Wie willst du dann mit PHP einen Pfad auf dem Client einlesen?

Nessus

Antwort 4 von _Bruni_

Hi Nessus! :-)

Zitat:
Du weißt, das PHP eine serverseitige Scriptsprache ist?

Da PHP fast nur serverseitig eingesetzt wird, glauben die meisten, dass das die einzige Möglichkeit ist. Man kann PHP aber, genau wie z.B. Perl, auch auf dem Clientrechner in der Konsole laufen lassen.
Also um alle Klarheiten zu beseitigen:
Mein Skript ist ein Webclient, der von Webservern Dokumente anfordert. ;-)

LG Bruni

Antwort 5 von Risatara2

Hi,
Also mir persönlich ist eine solche Funktion nicht bekannt, aber du kannst dir ja eine schreiben :D

Ich würde dafür die String-Funktion strtok() oder eine ähnliche benutzen, um die Pfade zu zerteilen, und dann für jedes Element des relativen Pfads überprüfen, ob es ".." ist, wenn ja dann wird das letzte Element des absoluten Pfads entfernt, wenn nicht wird das Element angehängt.

Das is jetzt ganz ins unreine gedacht
Risatara

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: