Heim >Backend-Entwicklung >PHP-Tutorial >Wie behalte ich Sonderzeichen in JSON mit json_encode bei?

Wie behalte ich Sonderzeichen in JSON mit json_encode bei?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-18 17:12:29304Durchsuche

How to Preserve Special Characters in JSON using json_encode?

JSON-Kodierung von Sonderzeichen mit json_encode

Beim Arbeiten mit Arrays, die Sonderzeichen enthalten, kann es vorkommen, dass diese Zeichen während der JSON-Kodierung mit dem in leere Zeichenfolgen umgewandelt werden json_encode-Funktion. Dieses Problem wurde bei Zeichen wie Urheberrechts- und Markensymbolen gemeldet.

Um dieses Problem zu beheben, stellen Sie sicher, dass die Zeichenfolgendaten UTF-8-codiert sind, wie in der json_encode-Dokumentation angegeben. Hier ist eine Lösung zur Behebung des Problems:

  1. Bevor Sie das Array codieren, verwenden Sie die Funktion array_map, um utf8_encode auf jedes Element anzuwenden.
<code class="php">$arr = array_map('utf8_encode', $arr);
$json = json_encode($arr);</code>
  1. Dies wird Kodieren Sie die Sonderzeichen korrekt, was zu einer JSON-Zeichenfolge führt, die die Symbole wie erwartet enthält.
<code class="json">// {"funds":"ComStage STOXX®Europe 600 Techn NR ETF"}</code>

Es ist wichtig zu beachten, dass aus Konsistenzgründen utf8_encode() anstelle von htmlentities() verwendet werden sollte.

Weitere Informationen finden Sie in der folgenden Dokumentation:

  • [json_encode()](https://www.php.net/manual/en/ function.json-encode.php)
  • [utf8_encode()](https://www.php.net/manual/en/function.utf8-encode.php)
  • [array_map ()](https://www.php.net/manual/en/function.array-map.php)

Das obige ist der detaillierte Inhalt vonWie behalte ich Sonderzeichen in JSON mit json_encode bei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn