<?php
$db = new PDO('sqlite::memory:');
$db->exec("CREATE TABLE fruit (nom VARCHAR(100), couleur VARCHAR(100))");
$db->exec("INSERT INTO fruit (nom, couleur) VALUES
('apple', 'red'),
('banana', 'yellow'),
('orange', 'orange'),
('kiwi', 'green')");
$sth = $db->prepare("SELECT nom, couleur FROM fruit");
$sth->execute();
/* styles PDOStatement::fetch */
echo "PDO::FETCH_ASSOC: ";
echo "Retourne la ligne suivante sous la forme d'un tableau indexé par le nom des colonnes\n";
$result = $sth->fetch(PDO::FETCH_ASSOC);
var_dump($result);
echo "\n";
echo "PDO::FETCH_BOTH: ";
echo "Retourne la ligne suivante sous la forme d'un tableau indexé par le nom et le numéro de la colonne\n";
$result = $sth->fetch(PDO::FETCH_BOTH);
var_dump($result);
echo "\n";
echo "PDO::FETCH_LAZY: ";
echo "Retourne la ligne suivante sous la forme d'un objet PDORow ayant les noms de colonnes comme propriétés\n";
$result = $sth->fetch(PDO::FETCH_LAZY);
var_dump($result);
echo "\n";
echo "PDO::FETCH_OBJ: ";
echo "Retourne la ligne suivante sous la forme d'un objet stdClass ayant les noms de colonnes comme propriétés\n";
$result = $sth->fetch(PDO::FETCH_OBJ);
var_dump($result);
echo "\n";
?>
L'exemple ci-dessus va afficher :
PDO::FETCH_ASSOC: Retourne la ligne suivante sous la forme d'un tableau indexé par le nom des colonnes
array(2) {
["nom"]=>
string(5) "apple"
["couleur"]=>
string(3) "red"
}
PDO::FETCH_BOTH: Retourne la ligne suivante sous la forme d'un tableau indexé par le nom et le numéro de la colonne
array(4) {
["nom"]=>
string(6) "banana"
[0]=>
string(6) "banana"
["couleur"]=>
string(6) "yellow"
[1]=>
string(6) "yellow"
}
PDO::FETCH_LAZY: Retourne la ligne suivante sous la forme d'un objet PDORow ayant les noms de colonnes comme propriétés
object(PDORow)#3 (3) {
["queryString"]=>
string(30) "SELECT nom, couleur FROM fruit"
["nom"]=>
string(6) "orange"
["couleur"]=>
string(6) "orange"
}
PDO::FETCH_OBJ: Retourne la ligne suivante sous la forme d'un objet stdClass ayant les noms de colonnes comme propriétés
object(stdClass)#4 (2) {
["nom"]=>
string(4) "kiwi"
["couleur"]=>
string(5) "green"
}