Maison >base de données >tutoriel mysql >Comment définir le codage des caractères dans les connexions PHP PDO ?

Comment définir le codage des caractères dans les connexions PHP PDO ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-13 14:07:12145parcourir

How Do I Set Character Encoding in PHP PDO Connections?

PHP PDO : Encodage des caractères

Auparavant, dans les connexions MySQL_*, l'encodage des caractères était généralement défini à l'aide de mysql_set_charset() et mysql_query(). Cependant, ces fonctions ne sont pas applicables aux connexions PDO.

Chaîne de connexion PDO

Pour PDO, le codage des caractères peut être spécifié dans la chaîne de connexion elle-même. Ajoutez l'attribut charset suivi du jeu de caractères souhaité, par exemple :

"mysql:host=$host;dbname=$db;charset=utf8mb4"

Versions PHP antérieures à 5.3.6

Dans les versions PHP antérieures à 5.3.6 , l'attribut charset a été ignoré dans la chaîne de connexion. Pour définir le codage des caractères dans ces versions, vous pouvez utiliser l'approche suivante :

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

Cela garantit que le codage des caractères est défini pour la connexion PDO, permettant ainsi une gestion correcte des données de caractères.

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