Maison >base de données >tutoriel mysql >Comment gérer l'encodage de caractères avec PDO en PHP ?

Comment gérer l'encodage de caractères avec PDO en PHP ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-23 03:22:14517parcourir

How to Handle Character Encoding with PDO in PHP?

PDO en PHP : Gestion de l'encodage

Dans le contexte de PHP, PDO (PHP Data Objects) propose une interface orientée objet pour se connecter aux bases de données. Lors de l'établissement d'une connexion PDO, il est crucial de garantir une bonne gestion de l'encodage pour votre base de données.

Dans l'API mysql_* classique de MySQL, l'encodage a été défini à l'aide de mysql_set_charset() et mysql_query("SET NAMES 'UTF8'"). Avec PDO, cependant, vous pouvez définir le jeu de caractères directement dans la chaîne de connexion.

Dans la chaîne de connexion PDO, utilisez le paramètre charset comme suit :

$connect = new PDO("mysql:host=$host;dbname=$db;charset=utf8mb4", $user, $pass, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));

Notez que dans les versions PHP avant la version 5.3.6, l'option charset n'était pas reconnue. Si vous utilisez une ancienne version de PHP, vous devrez exécuter une instruction manuellement :

$dbh = new PDO("mysql:host=$host;dbname=$db", $user, $password);
$dbh->exec("set names utf8mb4");

En définissant le jeu de caractères soit dans la chaîne de connexion, soit manuellement, vous vous assurez que votre communication avec la base de données utilise le codage correct des caractères, évitant ainsi tout problème de codage potentiel.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn