2016-11-07 4 views
0

Mein Problem ist so einfach. Ich muss einige Abfragen an einen Webdienst stellen, wenn ich Textdaten mit einigen Sonderzeichen einfüge é or à bekomme ich statt der Originale ein ? Zeichen. Ich habe diese zwei Funktionen urlencode()/rawurlencode() versucht. Die beiden geben mir nicht, was ich will. Meine Frage ist, wie kann man einen solchen Text auf meine Anfrage 3+rue+égbelle und nicht 3+rue+?gbelle bekommen.So kodieren Sie Zeichen mit Akzenten in PHP

Das ist alles.

+0

Sind Sie Sonderzeichen veröffentlichen? Diese Frage braucht ein bisschen mehr Kontext. –

+0

Ja, ich poste Sonderzeichen wie é oder à. – KubiRoazhon

+0

'urlencode' und' urldecode' funktionieren für mich. Ohne mehr Kontext ist das wirklich schwer zu beantworten. –

Antwort

1

Überprüfen Sie Ihre php.ini, Dateicodierung und Headerdefinitionen.

Für Mehrbytezeichen Sie in php.ini folgende Angaben enthalten sollten:

default_charset = "UTF-8"; 

Es wird der Standardzeichensatz, der verwendet wird von vielen PHP-Funktionen.

der gleiche Wert auf die Content-Type Header hinzugefügt werden, wenn andere unter Verwendung header() Funktion nicht angegeben ist:

header('Content-Type: text/html; charset=utf-8'); 

In der Datei sollten Sie verwenden:

<meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
Verwandte Themen