PHP AOP
L'extension PHP Data Objects (PDO) définit une interface légère et cohérente permettant à PHP d'accéder aux bases de données.
PDO fournit une couche d'abstraction d'accès aux données, ce qui signifie que quelle que soit la base de données utilisée, les mêmes fonctions (méthodes) peuvent être utilisées pour interroger et obtenir des données.
PDO est publié avec PHP5.1 et peut également être utilisé dans l'extension PECL de PHP5.0. Il ne peut pas fonctionner sur les versions PHP précédentes.
Installation PDO
Vous pouvez vérifier si l'extension PDO est installée via la fonction phpinfo() de PHP.
Installation de PDO sur les systèmes Unix
Sous Unix ou Linux, vous devez ajouter les extensions suivantes :
extension=pdo.so
Utilisateurs Windows
PDO et tous les principaux pilotes sont distribué avec PHP sous forme d'extensions partagées. Pour les activer, éditez simplement le fichier php.ini et ajoutez l'extension suivante :
extension=php_pdo.dllDe plus, il existe différentes extensions de base de données correspondant à ce qui suit :
;extension=php_pdo_firebird.dll ;extension=php_pdo_informix.dll ;extension=php_pdo_mssql.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_oci8.dll ;extension=php_pdo_odbc.dll ;extension=php_pdo_pgsql.dll ;extension=php_pdo_sqlite.dll
In Après avoir défini ces configurations. , nous devons redémarrer PHP ou le serveur Web.
Jetons ensuite un coup d'œil à des exemples spécifiques. Voici un exemple d'utilisation de PDO pour se connecter à une base de données MySql :
<?php $dbms='mysql'; //数据库类型 $host='localhost'; //数据库主机名 $dbName='test'; //使用的数据库 $user='root'; //数据库连接用户名 $pass=''; //对应的密码 $dsn="$dbms:host=$host;dbname=$dbName"; try { $dbh = new PDO($dsn, $user, $pass); //初始化一个PDO对象 echo "连接成功<br/>"; /*你还可以进行一次搜索操作 foreach ($dbh->query('SELECT * from FOO') as $row) { print_r($row); //你可以用 echo($GLOBAL); 来看到这些值 } */ $dbh = null; } catch (PDOException $e) { die ("Error!: " . $e->getMessage() . "<br/>"); } //默认这个不是长连接,如果需要数据库长连接,需要最后加一个参数:array(PDO::ATTR_PERSISTENT => true) 变成这样: $db = new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT => true)); ?>
C'est très simple. Ensuite, jetons un coup d'œil aux détails. de PHP PDO Description :
Constantes prédéfinies
Gestion des connexions de connexion PHP PDO
PHP. Transaction PDO et soumission automatique
Instructions préparées et procédures stockées PHP PDO
Erreurs PHP PDO et gestion des erreurs
Grands objets PHP PDO (LOB)
Classe PDO :
PDO::beginTransaction — Démarrer une transaction
PDO::commit — Valider une transaction
PDO::__construct — Créer une instance PDO qui représente une connexion à une base de données
PDO::errorCode — Obtenez le SQLSTATE lié à la dernière opération du handle de base de données
PDO::errorInfo — Renvoie les informations d'erreur du dernière opération sur la base de données
PDO::exec — Exécute une instruction SQL et renvoie le nombre de lignes affectées
PDO::getAttribute — Récupérer les attributs d'une connexion à une base de données
PDO::getAvailableDrivers — Renvoie un tableau de pilotes disponibles
PDO::inTransaction — Vérifie si dans un transaction
PDO::lastInsertId — Renvoie l'ID ou la valeur de séquence de la dernière ligne insérée
PDO::prepare — Prépare l'instruction SQL à exécuter et renvoie un objet PDOStatement
PDO::query — exécute une instruction SQL et renvoie un objet PDOStatement, qui peut être compris comme un ensemble de résultats
PDO::quote — est une instruction SQL Ajoutez des guillemets à la chaîne.
PDO::rollBack — Annuler une transaction
PDO::setAttribute — Définir l'attribut
Classe PDOStatement :
PDOStatement::bindColumn — Lier une colonne à une variable PHP
PDOStatement::bindParam — Lier un paramètre au nom de variable spécifié
PDOStatement::bindValue — Lier une valeur à un paramètre
PDOStatement::closeCursor — Ferme le curseur pour que l'instruction puisse être à nouveau exécutée.
PDOStatement::columnCount — Renvoie le nombre de colonnes dans le jeu de résultats
PDOStatement::debugDumpParams — Imprime une commande de prétraitement SQL
PDOStatement::errorCode — Récupère le SQLSTATE lié à la dernière opération de handle d'instruction
PDOStatement::errorInfo — Récupère les extensions liées à la dernière instruction handle operation Message d'erreur
PDOStatement::execute — Exécute une instruction préparée
PDOStatement::fetch — Récupère la ligne suivante de l'ensemble de résultats
PDOStatement::fetchAll — Renvoie un tableau contenant toutes les lignes du jeu de résultats
PDOStatement::fetchColumn — Renvoie une seule colonne du ligne suivante dans l'ensemble de résultats.
PDOStatement::fetchObject — Récupère la ligne suivante et la renvoie en tant qu'objet.
PDOStatement::getAttribute — Récupère un attribut d'instruction
PDOStatement::getColumnMeta — Renvoie les métadonnées d'une colonne dans l'ensemble de résultats
PDOStatement::nextRowset — Passe à l'ensemble de lignes suivant dans un handle d'instruction à plusieurs ensembles de lignes
PDOStatement::rowCount — Renvoie affecté par l'instruction SQL précédente Nombre de lignes
PDOStatement::setAttribute — Définir un attribut d'instruction
PDOStatement::setFetchMode — Définir le mode de récupération par défaut pour une instruction.