Funktion zum Konvertieren von " " in "%20"
Matthias Jütte
- php
Hallo!
Gibt es eine Funktion, die mir jedes Vorkommen eines Leerzeichens in den String "%20" konvertiert (ähnlich wie htmlentities() für ", ', etc)?
strreplace(" ", "%20", $string) kommt mir etwas wenig elegant vor.
Gruß
Matthias
Moin!
Gibt es eine Funktion, die mir jedes Vorkommen eines Leerzeichens in den String "%20" konvertiert (ähnlich wie htmlentities() für ", ', etc)?
strreplace(" ", "%20", $string) kommt mir etwas wenig elegant vor.
rawurlencode() ?
Bedenke, dass rawurldecode() nicht notwendig ist, wenn der Browser solch einen encodierten String zurück an den Webserver sendet - die Dekodierung nimmt PHP automatisch vor.
- Sven Rautenberg
hi,
Bedenke, dass rawurldecode() nicht notwendig ist, wenn der Browser solch einen encodierten String zurück an den Webserver sendet - die Dekodierung nimmt PHP automatisch vor.
macht diese dekodierung wirklich PHP?
m.E. obliegt dies schon einen schritt vorher dem webserver.
denn bei einem "normalen" request auf eine statische datei wie z.b. /schoenes%20bild.jpg muss ja auch der webserver selber schon %20 zu einem blank auflösen, um die datei "schoenes bild.jpg" in seinem filesystem finden zu können.
gruß,
wahsaga
Moin!
macht diese dekodierung wirklich PHP?
Ja, denn sonst hätte es keine Veranlassung gegeben, früher per PERL-Skripten, die nicht CGI.pm nutzen, eine Dekodierungsroutine für URL-Parameter einzubauen, um genau diese URL-Codierung wieder rückgängig zu machen.
- Sven Rautenberg
Hallo Matthias,
Gibt es eine Funktion, die mir jedes Vorkommen eines Leerzeichens in den String "%20" konvertiert (ähnlich wie htmlentities() für ", ', etc)?
strreplace(" ", "%20", $string) kommt mir etwas wenig elegant vor.
Du suchst die Funktion http://www.php.net/manual/en/function.rawurlencode.php.
Schöne Grüße,
Johannes