Bei Verwendung von MySQL -Datenbanken sind die Zeichensatzeinstellungen von entscheidender Bedeutung, die sich direkt auf die Datenspeicherung, die Abfragung und die Seitenanzeige auswirken. Wenn der Zeichensatz nicht korrekt festgelegt ist, kann er verstümmelter Code verursachen, oder die mehrsprachigen Daten können nicht normal verarbeitet werden. Um sicherzustellen, dass der Zeichensatz bei Verwendung der MySQLI -Erweiterung korrekt eingestellt wird, können wir die Funktion mySQLi :: get_charset verwenden, um zu überprüfen, ob die Zeichensatzeinstellungen in mysqli_Options () bereits wirksam haben.
In diesem Artikel wird detailliert vorgestellt, wie Sie überprüfen, ob der Zeichensatz über die Funktion von MySQLI :: get_charset korrekt angewendet wird.
Zunächst müssen wir eine Verbindung zur MySQL -Datenbank erstellen und den Zeichensatz über mySQLi_Options () festlegen. MySQLI_OPTIONS () ermöglicht es uns, einige Optionen zu konfigurieren, einschließlich Zeichensatzoptionen, bevor wir die Verbindung herstellen.
<?php
// Erstellen Sie eine Datenbankverbindung
$mysqli = new mysqli('localhost', 'username', 'password', 'database');
// Überprüfen Sie, ob die Verbindung erfolgreich ist
if ($mysqli->connect_error) {
die("Verbindung ist fehlgeschlagen: " . $mysqli->connect_error);
}
// Stellen Sie den Zeichen aufUTF-8
if (!$mysqli->set_charset("utf8")) {
echo "Einstellung der Zeichensatze fehlgeschlagen: " . $mysqli->error;
} else {
echo "Das Zeichensatz ist auf eingestellt UTF-8";
}
?>
Im obigen Code setzen wir den Zeichensatz der Datenbankverbindung auf UTF-8 auf $ mysqli-> set_charset ("utf8") . Als nächstes werden wir überprüfen, ob diese Einstellung in Kraft ist.
Sobald wir das Zeichensatz eingerichtet haben, besteht der nächste Schritt darin, zu überprüfen, ob er erfolgreich angewendet wurde. Die MySQLI :: Get_Charset -Funktion gibt den Zeichensatz zurück, das von der aktuellen Datenbankverbindung verwendet wird. Wir können überprüfen, ob der Zeichensatz mit dem übereinstimmt, was wir festlegen.
<?php
// Holen Sie sich den aktuellen Zeichensatz
$charset = $mysqli->get_charset();
// Ausgabe des aktuellen Zeichensatzes
echo "Der aktuelle Zeichensatz ist: " . $charset->charset;
?>
Das durch MySQLi :: get_charset erhaltene Zeichensatzobjekt enthält mehrere Informationen. Das am häufigsten verwendete Zeichen ist das Zeichen -Attribut, das den von der aktuellen Verbindung verwendeten Zeichensatz darstellt. Wir können dies mit dem von uns erwarteten Charakter -Set vergleichen.
Wenn der Zeichensatz korrekt eingestellt ist, sollte der von MySQLI :: Get_Charset zurückgegebene Zeichensatz mit dem übereinstimmen, was wir zuvor festgelegt haben. Wir können ein einfaches bedingtes Urteilsvermögen vornehmen, um eine Nachricht auszugeben, die der Zeichensatz erfolgreich festgelegt wird:
<?php
// Holen Sie sich den aktuellen Zeichensatz
$charset = $mysqli->get_charset();
// Stellen Sie sicher, dass der Zeichensatz wirksam ist
if ($charset->charset == 'utf8') {
echo "Charakter -Set erfolgreich,Der aktuelle Zeichensatz ist UTF-8";
} else {
echo "Einstellung der Zeichensatze fehlgeschlagen,Der aktuelle Zeichensatz ist " . $charset->charset;
}
?>
In Kombination mit dem vorherigen Code finden Sie ein vollständiges Beispiel, das zeigt, wie ein Zeichensatz eingerichtet wird, und zu überprüfen, ob es wirksam wird.
<?php
// Erstellen Sie eine Datenbankverbindung
$mysqli = new mysqli('localhost', 'username', 'password', 'database');
// Überprüfen Sie, ob die Verbindung erfolgreich ist
if ($mysqli->connect_error) {
die("Verbindung ist fehlgeschlagen: " . $mysqli->connect_error);
}
// Stellen Sie den Zeichen aufUTF-8
if (!$mysqli->set_charset("utf8")) {
die("Einstellung der Zeichensatze fehlgeschlagen: " . $mysqli->error);
}
// Holen Sie sich den aktuellen Zeichensatz
$charset = $mysqli->get_charset();
// Stellen Sie sicher, dass der Zeichensatz wirksam ist
if ($charset->charset == 'utf8') {
echo "Charakter -Set erfolgreich,Der aktuelle Zeichensatz ist UTF-8";
} else {
echo "Einstellung der Zeichensatze fehlgeschlagen,Der aktuelle Zeichensatz ist " . $charset->charset;
}
?>
Mit dem obigen Beispielcode zeigen wir, wie die Funktion mySQLI :: get_charset verwendet wird, um zu überprüfen, ob die Zeicheneinstellungen in mySQLI_Options () bereits wirksam haben. In der tatsächlichen Entwicklung ist die Gewährleistung der korrekten Einstellung von Zeichensätzen ein wichtiger Schritt, um Probleme mit der Kompatibilität von Daten und Datenbankkompatibilität zu vermeiden.
Darüber hinaus können andere Zeichensätze wie UTF8MB4 nach Bedarf festgelegt werden, um mehr Zeichen zu unterstützen.
Verwandte Tags:
mysqli