En PHP, l'extension MySQLI nous offre la fonction de manipulation de bases de données MySQL. Lors de la connexion à une base de données à l'aide de MySQLI , un jeu de caractères est défini par défaut. Le jeu de caractères détermine comment la base de données traite différents caractères lors de la lecture et de l'écriture de données. Pour assurer l'exactitude des données, il est important de visualiser et de gérer le jeu de caractères.
Cet article présentera comment utiliser la fonction MySQLI :: get_charset pour afficher le jeu de caractères utilisé par la connexion de la base de données actuelle immédiatement après la connexion à la base de données.
Tout d'abord, nous devons nous connecter à la base de données MySQL via la classe MySQLI . Supposons que vous ayez déjà le nom d'hôte, le nom d'utilisateur, le mot de passe et le nom de base de données de la base de données. Vous pouvez utiliser le code suivant pour vous connecter à la base de données:
<?php
$host = 'localhost'; // Hôte de base de données
$user = 'root'; // Nom d'utilisateur de base de données
$password = ''; // Mot de passe de base de données
$dbname = 'testdb'; // Nom de base de données
// Créer un nouveaumysqliObjet,Connectez-vous à la base de données
$mysqli = new mysqli($host, $user, $password, $dbname);
// Vérifiez si la connexion réussit
if ($mysqli->connect_error) {
die('Échec de la connexion à la base de données: ' . $mysqli->connect_error);
}
echo 'La connexion de la base de données est réussie!';
?>
Après nous être connectés à la base de données, nous devrons peut-être configurer le jeu de caractères pour assurer le codage correct des données. Par exemple, nous pouvons définir le jeu de caractères sur UTF8MB4 , qui est un jeu de caractères Unicode qui prend en charge plus de caractères. Vous pouvez utiliser le code suivant pour définir le jeu de caractères:
<?php
// Définissez le jeu de caractères surutf8mb4
if (!$mysqli->set_charset("utf8mb4")) {
printf("Impossible de charger le jeu de caractères utf8mb4: %s\n", $mysqli->error);
exit();
}
echo 'Le jeu de caractères a été défini surutf8mb4';
?>
Après avoir connecté et défini le jeu de caractères, nous pouvons utiliser la méthode MySQLI :: get_charset pour afficher le jeu de caractères utilisé par la connexion actuelle. Cette méthode renvoie un objet MySQLI_CHARSET contenant les informations de jeu de caractères actuelles. Vous pouvez obtenir le nom du jeu de caractères en accédant à la propriété Charset de l'objet.
<?php
// Obtenez le jeu de caractères actuellement utilisé
$charset_info = $mysqli->get_charset();
// Sortir le jeu de caractères actuel
echo 'Le jeu de caractères actuel est: ' . $charset_info->charset;
?>
Lors de l'exécution du code ci-dessus, $ charset_info-> charset renvoie le jeu de caractères utilisé par la connexion actuelle. Si vous avez défini un jeu de caractères avant cela, il affichera le jeu de caractères que vous définissez, tel que UTF8MB4 .
Combinez toutes les étapes précédentes, et le code complet final ressemble à ceci:
<?php
$host = 'localhost'; // Hôte de base de données
$user = 'root'; // Nom d'utilisateur de base de données
$password = ''; // Mot de passe de base de données
$dbname = 'testdb'; // Nom de base de données
// Créer un nouveaumysqliObjet,Connectez-vous à la base de données
$mysqli = new mysqli($host, $user, $password, $dbname);
// Vérifiez si la connexion réussit
if ($mysqli->connect_error) {
die('Échec de la connexion à la base de données: ' . $mysqli->connect_error);
}
echo 'La connexion de la base de données est réussie!<br>';
// Définissez le jeu de caractères surutf8mb4
if (!$mysqli->set_charset("utf8mb4")) {
printf("Impossible de charger le jeu de caractères utf8mb4: %s\n", $mysqli->error);
exit();
}
echo 'Le jeu de caractères a été défini surutf8mb4<br>';
// Obtenez le jeu de caractères actuellement utilisé
$charset_info = $mysqli->get_charset();
// Sortir le jeu de caractères actuel
echo 'Le jeu de caractères actuel est: ' . $charset_info->charset;
?>
Utilisez la fonction MySQLI :: get_charset pour afficher facilement le jeu de caractères utilisé par la connexion de la base de données. S'assurer que le jeu de caractères est correctement défini est très important pour éviter les données brouillées et assurer l'exactitude des données. En vérifiant le jeu de caractères immédiatement après la connexion à la base de données, nous pouvons nous assurer que notre application est capable de traiter les données de différentes langues et jeux de caractères.