Wie gehe ich mit verstümmelten Zeichen um, wenn PHP in der Datenbank gespeichert ist?
Während des Entwicklungsprozesses stoßen wir beim Speichern von Daten in der Datenbank häufig auf verstümmelte Zeichen. Diese Situation wird normalerweise dadurch verursacht, dass die Kodierung der Daten nicht mit der Kodierung der Datenbank übereinstimmt. Insbesondere bei der Verwendung von PHP zum Betrieb einer MySQL-Datenbank muss besonderes Augenmerk auf den Umgang mit verstümmelten Zeichen gelegt werden. In diesem Artikel werden mehrere gängige Verarbeitungsmethoden vorgestellt und spezifische Codebeispiele gegeben.
1. Legen Sie die Datenbankkodierung fest
Bevor Sie eine Verbindung zur Datenbank herstellen, sollten Sie zunächst die Kodierung der Datenbank festlegen, um sicherzustellen, dass die Kodierung der Datenbank mit der Kodierung der Anwendung übereinstimmt. Im Allgemeinen gehören zu den häufig verwendeten Kodierungsmethoden UTF-8, GBK usw. Im Folgenden finden Sie ein Codebeispiel zum Festlegen der Datenbankkodierung:
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "dbname"; $conn = new mysqli($servername, $username, $password, $dbname); $conn->set_charset("utf8"); // 设置数据库编码为UTF-8
2. Stellen Sie die PHP-Kodierung ein
Bevor Sie Daten in die Datenbank speichern, sollten Sie sicherstellen, dass die Kodierung des PHP-Skripts auch mit der Datenbankkodierung übereinstimmt. Die Kodierung kann im PHP-Skript eingestellt werden, zum Beispiel:
header('Content-Type: text/html; charset=utf-8'); mb_internal_encoding('UTF-8');
3. Verarbeitung der Datenkodierung
Manchmal werden die aus dem Formular erhaltenen Daten in anderen Kodierungsformen dargestellt und müssen in die von unterstützte Kodierungsform konvertiert werden die Datenbank. Sie können die integrierte mb_convert_encoding
-Funktion von PHP verwenden, um eine Kodierungskonvertierung durchzuführen, zum Beispiel:
$data = $_POST['data']; $data = mb_convert_encoding($data, 'UTF-8', 'GB2312');
4. Verwenden Sie vorbereitete Anweisungen
Vorverarbeitete Anweisungen sind eine sichere Möglichkeit, Daten in die Datenbank einzufügen. Sie behandeln Datenkodierungsprobleme automatisch und vermeiden Verstümmelungen Zeichen kommen vor. Das Folgende ist ein Beispielcode, der vorbereitete Anweisungen verwendet, um Daten in die Datenbank einzufügen:
$stmt = $conn->prepare("INSERT INTO table_name (column1, column2) VALUES (?, ?)"); $stmt->bind_param("ss", $data1, $data2); $data1 = "数据1"; $data2 = "数据2"; $stmt->execute();
Das Obige sind einige gängige Methoden und Codebeispiele für den Umgang mit verstümmelten Zeichen, wenn PHP in der Datenbank gespeichert ist. Durch die richtige Einstellung der Datenbankkodierung, PHP-Kodierung, Datenkodierung und Verwendung von Vorverarbeitungsanweisungen können Sie Probleme mit verstümmelten Daten effektiv vermeiden.
Das obige ist der detaillierte Inhalt vonUmgang mit verstümmelten Zeichen, wenn PHP in der Datenbank gespeichert ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!