Vinzenz Mai: Problem mit utf_encode

Beitrag lesen

Hallo

Eine Frage zum PHP-Befehl "utf8_encode".

Ich muss einem Dienstleister über dessen Schnittstelle UTF8-Kodierte Daten übergeben.

Dies realisiere ich mittels
   $utf8_daten=utf8_encode($original_daten);

Das ist ok.

U.a. ist in den Originaldaten eine Leerzeichen bzw. auch ein Pluszeichen mit enthalten.

Diese werden nach Kodierung in der Variable $utf8_daten aber unverändert aufgeführt.

Das ist ja auch richtig. Pluszeichen und Leerzeichen werden in UTF-8 genauso kodiert wie in ASCII oder Latin-1.

Der Dienstleister meinte aber, aus dem Pluszeichen müsse z.b. ein "%2B" werden, ebenfalls müsse sich auch das Leerzeichen ändern.

Dann hat er Dir nicht genügend Informationen gegeben. Das hört sich nach URL-Codierung, siehe z.B. rawurlencode an. URL-Codierung wäre bei Verwendung von UTF-8 in einem Nicht-URL-Kontext meiner Meinung nach Unsinn.

Nun vertraue ich natürlich darauf, dass der utf8_encode-Befehl von PHP korrekt arbeitet.

Was Plus- und Leerzeichen angeht, definitiv.

Kann mir jmd. meinen Programmier-/ Denkfehler aufzeigen?

Der Denkfehler liegt nach den vorliegenden Informationen beim Dienstleister, der Dir nicht genügend Informationen zur Schnittstelle geliefert hat.

Freundliche Grüße

Vinzenz