Heim  >  Artikel  >  Backend-Entwicklung  >  PHP legt das String-Kodierungsformat fest

PHP legt das String-Kodierungsformat fest

藏色散人
藏色散人Original
2020-08-13 09:45:333986Durchsuche

Die Möglichkeit, das String-Kodierungsformat in PHP festzulegen, besteht darin, eine Codezeile als „header(“Content-Type: text/html;charset=utf-8“);“ hinzuzufügen.

PHP legt das String-Kodierungsformat fest

Empfohlen: „PHP-Video-Tutorial

php Stellen Sie die Zeichenkodierung auf utf-8 ein

Fügen Sie am Anfang des Codes eine Zeile hinzu:

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

Zugehörige Einführung:

Die Essenz von PHP-Strings

Erklärung aus der PHP-Dokumentation:

Die Implementierung von String in PHP ist ein Array von Bytes plus einer Ganzzahl, die die Pufferlänge angibt. Es gibt keine Informationen darüber, wie Bytes in Zeichen umgewandelt werden, die Entscheidung liegt beim Programmierer. Es gibt keine Einschränkungen hinsichtlich der Werte, aus denen eine Zeichenfolge besteht, einschließlich Bytes mit dem Wert 0, die an einer beliebigen Stelle in der Zeichenfolge erscheinen können.

PHP gibt die Codierung der Zeichenfolge nicht an. Wie die Zeichenfolge codiert wird, hängt vom Programmierer ab. Strings werden entsprechend der Codierung der PHP-Datei codiert. Wenn Ihre Dateikodierung beispielsweise GBK ist, dann ist Ihr gesamter Codeinhalt GBK.

Ergänzend zum Konzept der binären Sicherheit kann ein Byte mit dem Wert 0 (NULL) an jeder Position in der Zeichenfolge stehen, und die unterste Ebene einiger nicht-binärer Funktionen von PHP ist die aufgerufene C-Funktion, die ignoriert wird die Zeichen nach NULL.

Solange die Dateikodierung von PHP mit ASCII kompatibel ist, können String-Operationen gut verarbeitet werden. Allerdings sind String-Operationen immer noch nativer Natur (unabhängig von der Dateikodierung), daher müssen Sie bei der Verwendung darauf achten:

Einige Funktionen gehen davon aus, dass Strings in einzelnen Bytes kodiert sind, sie müssen jedoch keine Bytes interpretieren als bestimmte Charaktere. Zum Beispiel die Funktion sbustr().

Viele Funktionen müssen Codierungsparameter explizit übergeben, andernfalls wird der Standardwert aus der PHP.INI-Datei abgerufen, z. B. die Funktion htmlentities().

Es gibt auch einige Funktionen, die sich auf den lokalen Bereich beziehen, und diese Funktionen können nur mit einem einzelnen Byte arbeiten.

Obwohl PHP intern keine Unicode-Zeichen unterstützt, unterstützt es die UTF-8-Kodierung. In den meisten Fällen wird es jedoch kein Problem geben:

Nicht-UTF-8 codierte Zeichen So konvertieren Sie Zeichenfolgen

Eine UTF-8-codierte Webseite, aber wenn Benutzer das Formular senden, verwenden sie möglicherweise GBK-Codierung (entspricht nicht den Meta-Tags)

Eine UTF-8-codierte PHP-Datei, verwenden Sie strlen(" China“ ) gibt 6 anstelle der tatsächlichen Anzahl von Zeichen (2) zurück

Wie lässt sich dieses Problem lösen? PHP bietet die mbstring-Erweiterung!

Das obige ist der detaillierte Inhalt vonPHP legt das String-Kodierungsformat fest. 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