Autor Zpráva
wix
Profil *
Dobrý den, pokud zadám adresu např. localhost/test1///test2, tak globální proměnná $_SERVER["REQUEST_URI"] vrátí "/test1///test2". Dají se nějak odstranit ty několikanásobně použitá lomítka, aby jsem dostal zpět jen "/test1/test2"? Děkuji předem za odpovědi
johnl
Profil
wix:
Dá se to např. i regulérním výrazem. Ale třeba i takto:

$REQUEST_URI = str_replace("//","",$_SERVER["REQUEST_URI"]);
wix
Profil *
Děkuji, ale myslím, že toto nebude fungovat pokud někdo zadá sudý počet lomítek.
johnl
Profil
wix:
To je pravda. :)) Jsem si říkal že tak jednoduché to nebude, tak pak zbývá asi regulérní výraz.
DoubleThink
Profil *
preg_replace('/\/+/', '/', $_SERVER["REQUEST_URI"])

Otázka je, proč je chceš odstraňovat. Ničemu nevadí.
wix
Profil *
Snažím se vytvořit skript na routovaní, lomítka mi poté dělají bordel v poli.


Mimochodem, děkuji za pomoc.
DoubleThink
Profil *
Tak si rovnou ušetři jednu operaci a využij stejný regulár do preg_split.
wix
Profil *
Děkuji, zkusím se na to podívat a něco s tím provést.


Ještě bych se chtěl zeptat, jestli je nutné nějak ošetřovat kvůli bezpečnosti adresy ($_GET, atd.)?
Aleš Janda
Profil
wix:
Ještě bych se chtěl zeptat, jestli je nutné nějak ošetřovat kvůli bezpečnosti adresy ($_GET, atd.)?
Ano, podle toho, kde to dále použiješ.

johnl:
regulérní výraz
Není to regulérní výraz, ale regulární výraz. Na tom výrazu nic regulérního není.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0