Maison >développement back-end >tutoriel php >Pourquoi PDO renvoie-t-il des chaînes au lieu de chiffres depuis MySQL et comment puis-je y remédier ?
PDO : Récupération de données numériques MySQL
Lors de la récupération de valeurs entières à partir de MySQL à l'aide de PDO, il est courant de rencontrer des représentations sous forme de chaîne de nombres plutôt que des nombres réels. données numériques. Pour remédier à cela, vous pouvez envisager d'utiliser l'attribut PDO::ATTR_STRINGIFY_FETCHES. Cependant, cet attribut ne s'applique pas au pilote MySQL.
Au lieu de cela, vous pouvez désactiver l'émulation des instructions préparées pour permettre au pilote natif MySQL de renvoyer les types de données natifs. Ceci peut être réalisé par :
new PDO($dsn, $user, $pass, array( PDO::ATTR_EMULATE_PREPARES => false ))
Bien que recevoir des chaînes pour des valeurs numériques puisse sembler inhabituel, c'est un phénomène courant en raison du comportement par défaut des pilotes MySQL. En modifiant l'émulation de l'instruction préparée, vous pouvez vous assurer que les valeurs numériques sont récupérées comme prévu.
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!