Réécrire l'ancien code MySQL-PHP avec des fonctions MySQL_* obsolètes
À mesure que PHP continue d'évoluer, certaines fonctions deviennent obsolètes et sont remplacées par d'autres. des alternatives efficaces et sécurisées. L'un de ces changements implique la dépréciation des fonctions mysql_* au profit des instructions préparées et des PDO (PHP Data Objects).
Connexion à la base de données
Lors de l'établissement d'une base de données connexion, le code suivant peut être mis à jour :
// Old (mysql_connect) $conn = mysql_connect('127.0.0.1', 'root', 'pass'); // New (PDO) $db = new PDO('mysql:host=127.0.0.1;dbname=people;charset=UTF-8', 'root', 'pass');
Sélection de la base de données (MySQL Spécifique)
Avec la nouvelle connexion PDO, la sélection de la base de données après avoir établi la connexion n'est pas nécessaire. Le nom de la base de données est spécifié dans la chaîne de connexion elle-même.
Classe de base de données
Fonctions telles que __construct, __destruct, connect, selectDb ne sont plus nécessaires avec AOP. La chaîne de connexion et le constructeur PDO gèrent la majeure partie de l'initialisation et de la gestion des connexions.
Code révisé
Le code mis à jour ci-dessous démontre l'approche simplifiée de la connexion et de la gestion de la base de données à l'aide de PDO. :
// Updated Script class dbConn { protected $conn; public function __construct($connection_string) { try { $this->conn = new PDO($connection_string); } catch (PDOException $e) { die ("Error connecting to database: " . $e->getMessage()); } } public function __destruct() { if (!empty($this->conn)) $this->conn = null; } }
Conclusion
En utilisant le PDO et en abandonnant les fonctions obsolètes, les développeurs peuvent s'assurer que leur code MySQL-PHP est à jour, sécurisé et efficace. N'oubliez pas que les détails spécifiques de mise en œuvre peuvent varier en fonction de l'application individuelle.
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!