Heim > Backend-Entwicklung > PHP-Problem > So lösen Sie verstümmelten Ubuntu-PHP-Code

So lösen Sie verstümmelten Ubuntu-PHP-Code

PHPz
Freigeben: 2023-04-24 14:59:28
Original
922 Leute haben es durchsucht

Ubuntu-PHP-Lösung für verstümmelten Code

Wenn Sie Ubuntu zum Erstellen einer PHP-Entwicklungsumgebung verwenden, können Probleme mit verstümmeltem Code auftreten. Obwohl dieses Problem für professionelle Webentwickler kein allzu großes Problem darstellt, ist es für Anfänger ein sehr kniffliges Problem. In diesem Artikel wird erläutert, wie Sie das PHP-verstümmelte Problem unter Ubuntu lösen können.

  1. Bestimmen Sie das Problem

Zunächst müssen Sie das Problem mit dem verstümmelten Code ermitteln. In PHP können an vielen Stellen verstümmelte Zeichen auftreten, z. B. auf HTML-Seiten, in der Datenbankspeicherung, beim Lesen und Schreiben von Dateien usw. Daher muss zunächst das spezifische verstümmelte Problem ermittelt werden.

Wenn es auf der HTML-Seite erscheint, können Sie der Seite das folgende Meta-Tag hinzufügen, um den Zeichensatz anzugeben:

<meta charset="utf-8">
Nach dem Login kopieren

Wenn es im Datenbankspeicher erscheint, können Sie den Zeichensatz in der Datenbankverbindung angeben:

$conn = mysqli_connect('localhost', 'username', 'password', 'db_name');
mysqli_set_charset($conn, 'utf8');
Nach dem Login kopieren

Wenn es beim Lesen und Schreiben von Dateien auftritt, können Sie den Zeichensatz beim Öffnen der Datei angeben:

$file = fopen('example.txt', 'r');
stream_filter_append($file, "convert.iconv.utf-8/cp936");
Nach dem Login kopieren
  1. Bestimmen Sie den Zeichensatz

Nachdem Sie das verstümmelte Problem ermittelt haben, müssen Sie den zu verwendenden Zeichensatz weiter bestimmen . Wenn alles andere korrekt ist, aber der Zeichensatz falsch ist, treten weiterhin verstümmelte Zeichen auf. Typischerweise ist UTF-8 der am häufigsten verwendete Zeichensatz. Der aktuelle Zeichensatz kann im PHP-Code mithilfe des folgenden Codes ermittelt werden:

echo ini_get('default_charset');
Nach dem Login kopieren

Wenn der aktuelle Zeichensatz nicht utf-8 ist, können Sie den Standardzeichensatz in der Datei php.ini auf utf-8 ändern.

  1. Ändern Sie die php.ini-Datei

Um die php.ini-Datei zu ändern, geben Sie den folgenden Befehl in das Terminal ein:

sudo nano /etc/php/7.2/apache2/php.ini
Nach dem Login kopieren

Hier werden PHP 7.2 und Apache2 als Beispiele verwendet. Die spezifischen Versionen sollten entsprechend geändert werden die tatsächliche Situation. Auch der Dateipfad kann je nach Installationsmethode variieren.

Suchen Sie dann die folgenden Codezeilen, kommentieren Sie sie aus und ändern Sie sie in utf-8:

; default_charset = "UTF-8"
default_charset = "utf-8"
; input_encoding = "UTF-8"
; output_encoding = "UTF-8"
Nach dem Login kopieren

Beachten Sie, dass Sie ihn manuell hinzufügen müssen, wenn der obige Code nicht in der php.ini-Datei vorhanden ist.

  1. Apache neu starten

Nachdem Sie die Datei php.ini geändert haben, müssen Sie Apache neu starten, damit die Änderung wirksam wird. Geben Sie im Terminal den folgenden Befehl ein, um Apache neu zu starten:

sudo service apache2 restart
Nach dem Login kopieren
  1. Test

Nach dem Neustart von Apache müssen Sie testen, ob das verstümmelte Problem behoben ist. Sie können zum Testen eine einfache PHP-Datei schreiben. Erstellen Sie beispielsweise eine Datei namens index.php mit folgendem Inhalt:




    <meta charset="utf-8">
    测试乱码问题




Nach dem Login kopieren

Greifen Sie dann im Browser auf die Datei zu, um zu überprüfen, ob ein Problem mit verstümmeltem Code vorliegt.

  1. Andere Lösungen

Wenn keine der oben genannten Methoden das verstümmelte Problem lösen kann, können Sie auch die folgenden Methoden ausprobieren:

  • Ändern Sie die MySQL-Konfigurationsdatei auf die gleiche Weise und geben Sie den Standardzeichensatz als utf-8 an ;
  • Verwenden Sie im Code die Funktion iconv(), um den Zeichensatz in utf-8 zu konvertieren.
  • Wenn der Zeichensatz unsicher ist, verwenden Sie die Funktion mb_detect_encoding(), um den Zeichensatz automatisch zu erkennen.

Zusammenfassung

Bei der Verwendung von Ubuntu zum Aufbau einer PHP-Entwicklungsumgebung sind verstümmelte Zeichen ein häufiges Problem. Normalerweise kann dieses Problem durch Angabe des Zeichensatzes und Änderung der Datei php.ini gelöst werden. Wenn keine dieser Methoden das Problem löst, müssen Sie über ein tieferes Verständnis von PHP und verwandten Technologien verfügen, um weitere Debugging- und Optimierungsmaßnahmen durchführen zu können.

Das obige ist der detaillierte Inhalt vonSo lösen Sie verstümmelten Ubuntu-PHP-Code. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage