Matthias Jütte: Funktion zum Konvertieren von " " in "%20"

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

--
ss:| zu:| ls:[ fo:| de:] va:) ch:? sh:) n4:( rl:( br:> js:| ie:% fl:) mo:}
http://www.makaio.de/quotations
  1. 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

    1. 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

      --
      "Look, that's why there's rules, understand? So that you _think_ before you break 'em."
      1. 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

  2. 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

    --
    ss:| zu:} ls:[ fo:} de:] va:} ch:) sh:( n4:| rl:( br:< js:| ie:{ fl:( mo:}