PHP Connexion et récupération de base du PDO


Exemple

Depuis PHP 5.0, PDO est disponible en tant que couche d'accès aux bases de données. Il est indépendant de la base de données, et l'exemple de code de connexion suivant devrait donc fonctionner pour n'importe laquelle de ses bases de données prises en charge simplement en modifiant le DSN.

// First, create the database handle

//Using MySQL (connection via local socket):
$dsn = "mysql:host=localhost;dbname=testdb;charset=utf8";

//Using MySQL (connection via network, optionally you can specify the port too):
//$dsn = "mysql:host=127.0.0.1;port=3306;dbname=testdb;charset=utf8";

//Or Postgres
//$dsn = "pgsql:host=localhost;port=5432;dbname=testdb;";

//Or even SQLite
//$dsn = "sqlite:/path/to/database"

$username = "user";
$password = "pass";
$db = new PDO($dsn, $username, $password);

// setup PDO to throw an exception if an invalid query is provided
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

// Next, let's prepare a statement for execution, with a single placeholder
$query = "SELECT * FROM users WHERE class = ?";
$statement = $db->prepare($query);

// Create some parameters to fill the placeholders, and execute the statement
$parameters = [ "221B" ];
$statement->execute($parameters);

// Now, loop through each record as an associative array
while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
    do_stuff($row);
}

La fonction prepare crée un objet PDOStatement partir de la chaîne de requête. L'exécution de la requête et la récupération des résultats sont effectuées sur cet objet renvoyé. En cas de défaillance, la fonction renvoie false ou génère une exception (en fonction de la configuration de la connexion PDO).