Maison >développement back-end >tutoriel php >Comment garantir une récupération correcte des types de données entières et numériques à partir de MySQL en PHP ?
Comment récupérer des entiers et des chiffres sous forme de données saisies en PHP à partir de MySQL
Vous pouvez rencontrer une situation dans laquelle une requête MySQL renvoie des types de données de chaîne pour les colonnes entières et numériques en PHP, malgré la définition de l'option "PDO::ATTR_STRINGIFY_FETCHES" sur false. Cet écart provient de problèmes d'implémentation du pilote.
La solution consiste à s'assurer que le bon pilote est utilisé, à savoir le pilote mysqlnd. Lorsque vous visualisez "php -i", vous devriez voir "mysqlnd" explicitement mentionné dans la section "pdo_mysql". S'il n'y est pas, suivez ces étapes pour l'installer sur Ubuntu :
Supprimez le pilote MySQL natif :
apt-get remove php5-mysql
Installez mysqlnd pilote :
apt-get install php5-mysqlnd
Redémarrer Apache2 :
service apache2 restart
Confirmez que les paramètres PDO sont appropriés :
Par exemple, considérons l'objet renvoyé suivant :
object(stdClass)[915] public 'integer_col' => int 1 public 'double_col' => float 1.55 public 'float_col' => float 1.5 public 'decimal_col' => string '1.20' (length=4) public 'bigint_col' => string '18446744073709551615' (length=20)
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!