PHP : Function Reference : PDO Functions : PDOStatement->fetchAll()
Example 1786. Fetch all remaining rows in a result set
<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit"); $sth->execute();
/* Fetch all of the remaining rows in the result set */ print("Fetch all of the remaining rows in the result set:\n"); $result = $sth->fetchAll(); print_r($result); ?>
The above example will output:
Fetch all of the remaining rows in the result set:
Array
(
[0] => Array
(
[NAME] => pear
[0] => pear
[COLOUR] => green
[1] => green
)
[1] => Array
(
[NAME] => watermelon
[0] => watermelon
[COLOUR] => pink
[1] => pink
)
)
Example 1787. Fetching all values of a single column from a result set
The following example demonstrates how to return all of the values of a
single column from a result set, even though the SQL statement itself
may return multiple columns per row.
<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit"); $sth->execute();
/* Fetch all of the values of the first column */ $result = $sth->fetchAll(PDO::FETCH_COLUMN, 0); var_dump($result); ?>
The above example will output:
Array(3)
(
[0] =>
string(5) => apple
[1] =>
string(4) => pear
[2] =>
string(10) => watermelon
)
Example 1788. Grouping all values by a single column
The following example demonstrates how to return an associative array
grouped by the values of the specified column in the result set. The
array contains three keys: values apple and
pear are returned as arrays that contain two
different colours, while watermelon is
returned as an array that contains only one colour.
<?php
$insert = $dbh->prepare("INSERT INTO fruit(name, colour) VALUES (?, ?)"); $insert->execute('apple', 'green'); $insert->execute('pear', 'yellow');
$sth = $dbh->prepare("SELECT name, colour FROM fruit"); $sth->execute();
/* Group values by the first column */ var_dump($sth->fetchAll(PDO::FETCH_COLUMN|PDO::FETCH_GROUP)); ?>
The above example will output:
array(3) {
["apple"]=>
array(2) {
[0]=>
string(5) "green"
[1]=>
string(3) "red"
}
["pear"]=>
array(2) {
[0]=>
string(5) "green"
[1]=>
string(6) "yellow"
}
["watermelon"]=>
array(1) {
[0]=>
string(5) "green"
}
}
gabriel
Using fetchAll(PDO::FETCH_ASSOC) for extract datas from database
<?php
$db = new PDO('mysql:host='.$serverAddress.';dbname='.$databaseName.'',
$login,$password, array(PDO::ATTR_PERSISTENT => true));
$delete = "DELETE FROM table";
$stmt01 = $db -> prepare($delete);
$stmt01 -> execute();
$insert = "INSERT INTO table VALUES (:null,:rid,:indice,:titre,:nom,:page,:index)";
$stmt = $db -> prepare ($insert);
$stmt -> bindParam (":null", $null);
$stmt -> bindParam (":rid", $rid);
$stmt -> bindParam (":indice", $indice);
$stmt -> bindParam (":titre", $titre);
$stmt -> bindParam (":nom", $nom);
$stmt -> bindParam (":page", $page);
$stmt -> bindParam (":index", $index);
$datas = array (
array(null,'5182CQZSKB9XLRD','1.1.5','Mon chapitre PDO','pdo.pdf','5','3'),
array(null,'5182CQZSKB8XLRD','1.1.6','Mon chapitre PDO','pdo.pdf','6','3'),
);
foreach ($datas as $row) {
$null = $row[0];
$rid = $row[1];
$indice = $row[2];
$titre = $row[3];
$nom = $row[4];
$page = $row[5];
$index = $row[6];
$stmt -> execute();
}
$select = "SELECT * FROM table";
$stmt02 = $db -> prepare($select);
$stmt02 -> execute();
$result = $stmt02 -> fetchAll(PDO::FETCH_ASSOC);
foreach ( $result as $array) {
foreach ( $array as $field=> $value) {
print_r($field.":".$value);
print("<br/>");
}
print("<br/><br/>");
}
?>
Results :
id:32
rid:5182CQZSKB9XLRD
indice:1.1.5
titre:Mon chapitre PDO
nom:pdo.pdf
page:5
index:3
id:33
rid:5182CQZSKB8XLRD
indice:1.1.6
titre:Mon chapitre PDO
nom:pdo.pdf
page:6
index:3
|
|