Heim  >  Artikel  >  Backend-Entwicklung  >  Konvertieren Sie das PHP-Array in JSON, um Chinesisch zu filtern

Konvertieren Sie das PHP-Array in JSON, um Chinesisch zu filtern

WBOY
WBOYOriginal
2023-05-19 09:00:37545Durchsuche

In der Webentwicklung ist es oft notwendig, Arrays im PHP-Format in das JSON-Format zu konvertieren, um Daten dynamisch auf die Seite zu laden. Während der Konvertierung des Arrays in JSON können jedoch Probleme mit der chinesischen Kodierung auftreten, die eine normale Anzeige der Daten verhindern. In diesem Artikel wird erläutert, wie chinesische Codierungsprobleme beim Konvertieren von PHP-Arrays in JSON herausgefiltert werden, um sicherzustellen, dass die Daten normal auf der Seite angezeigt werden.

1. PHP-Array in JSON konvertieren

Verwenden Sie in PHP die Funktion json_encode(), um ein Array in das JSON-Format zu konvertieren. Wenn Sie beispielsweise das folgende Array haben:

$arr = array(
  "name" => "张三",
  "age" => 25,
  "gender" => "男"
);

Sie können es mit dem folgenden Code in das JSON-Format konvertieren:

$json = json_encode($arr);
echo $json; // 输出:{"name":"张三","age":25,"gender":"男"}

2. Chinesisches Codierungsproblem

Wenn das Array jedoch chinesische Zeichen enthält, kann das konvertierte JSON-Format vorliegen verschlüsselte Frage. Konvertieren Sie beispielsweise das folgende Array in das JSON-Format:

$arr = array(
  "name" => "李四",
  "age" => 30,
  "gender" => "男",
  "desc" => "这是一个描述,包含中文字符"
);

Verwenden Sie die Funktion json_encode(), um es in das JSON-Format zu konvertieren:

$json = json_encode($arr);
echo $json; // 输出:{"name":"u674eu56db","age":30,"gender":"u7537","desc":"u8fd9u662fu4e00u4e2au63cfu8ff0uff0cu5305u542bu4e2du6587u5b57u7b26"}

Wie Sie sehen, sind chinesische Zeichen als Unicode-Zeichen codiert und können auf der Seite nicht richtig angezeigt werden . Dies liegt daran, dass die Funktion json_encode() standardmäßig Nicht-ASCII-Zeichen in Unicode-Zeichen codiert, um Daten zwischen verschiedenen Plattformen zu übertragen.

3. Chinesisch filtern

Um das chinesische Codierungsproblem zu lösen, können Sie den Parameter JSON_UNESCAPED_UNICODE verwenden, um chinesische Zeichen zu filtern. Dieser Parameter ermöglicht der Funktion json_encode(), bei der Konvertierung von JSON chinesische Zeichen nicht in Unicode-Zeichen zu kodieren, sondern chinesische Zeichen direkt auszugeben.

Ändern Sie den obigen Code wie folgt:

$json = json_encode($arr, JSON_UNESCAPED_UNICODE);
echo $json; // 输出:{"name":"李四","age":30,"gender":"男","desc":"这是一个描述,包含中文字符"}

Sie können sehen, dass chinesische Zeichen wie andere Zeichen ausgegeben wurden und normal auf der Seite angezeigt werden können.

4. Zusammenfassung

Wenn das Array chinesische Zeichen enthält, müssen Sie beim Konvertieren eines PHP-Arrays auf chinesische Codierungsprobleme achten. Mit dem Parameter JSON_UNESCAPED_UNICODE können Sie chinesische Zeichen filtern, um sicherzustellen, dass die Daten normal auf der Seite angezeigt werden.

Das obige ist der detaillierte Inhalt vonKonvertieren Sie das PHP-Array in JSON, um Chinesisch zu filtern. 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