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.dll
De 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.