Maison >base de données >tutoriel mysql >Comment puis-je moderniser mon code PHP MySQL_* obsolète à l'aide de PDO ?

Comment puis-je moderniser mon code PHP MySQL_* obsolète à l'aide de PDO ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-08 16:44:11656parcourir

How Can I Modernize My Deprecated MySQL_* PHP Code Using PDO?

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!

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