• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

URI Frage

Tronjer

Senior HTML'ler
Mal eine konzeptionelle Frage. Ich mache ja nicht sonst nicht viel mit PHP. :(

Ich setze bei einem Projekt Variablen korrespondierend zur URL. Nun ist die Seitenstruktur in meiner lokalen Umgebung unterschiedlich zum Live-Server.

Lokal sieht das so aus:
PHP:
http://localhost/~username/projektname/
http://localhost/~username/projektname/index.php
http://localhost/~username/projektname/foobar.php

und auf Production wird es so aussehen:
PHP:
example.com // <-.htaccess redirect auf root 
example.com/index.php
example.com/foobar.php

Was ich mir überlegt hatte war, den URI-String zu splitten und das letzte Element in einer Variablen aufzufangen:
PHP:
$foo = end(explode('/', $_SERVER['REQUEST_URI']));

Frage: Gäbe es dafür noch einen besseren Ansatz? So wirklich elegant kommt mir das nicht vor.
 
Soweit ich weis gibt es doch in Php 5 den split Befehl womit man Arrays und soweit ich weis auch Strings teilen kann. Eventuell versuchst du es einfach mal die Url als Array zu verpacken :)
Ich hatte es letztes mal sogar mit einem kleinen js gelöst, da das mir am einfachsten und elegantesten erschien.
Lg
Freshmojojo
 
Yo da hast du recht nur ich fand es halt letztes mal einfach am saubersten, da ich eine Pagination bzw. eine Art Galerie über SQLi über die Php Schnittstelle gemacht es einfach viel eleganter dies dann einfach in einem Js auszulagern.
 
Soweit ich weis gibt es doch in Php 5 den split Befehl

Die Funktion gibt es nicht mehr: http://de3.php.net/split - Ersatz: explode.

Ich würde jedoch folgendes empfehlen:
Erkennung auf welchem System man ist anhand der aufgerufenen Domain.

Beispiel:
PHP:
if( strstr("localhost", $_SERVER["HTTP_HOST"] ) ) {
 define("URL", "http://localhost/~username/projektname/");
}
else
{
 define("URL","http://www.example.com/");
}

Und an der Stelle der Ausgabe:
PHP:
echo URL."pfad/etc/";
 
Danke, ich werde es mir mal anschauen. Wobei ich in einem Kundenprojekt meinen username hier eigentlich nicht verwenden wollte
 
Zurück
Oben