Discussion

Vous êtes ici : Accueil » Les cours PHP » PDOStatement::fetchAll Retourne un tableau contenant toutes les lignes du jeu d'enregistrements

PDOStatement::fetchAll Retourne un tableau contenant toutes les lignes du jeu d'enregistrements

 $sth = $db->prepare("SELECT name, color FROM fruits");
 $sth->execute();
 
 $result = $sth->fetchAll();
 
 
 debug($result);

La fonction  debug est une petite fonction php que j'ai trouvé sur le net qui permet d'afficher de manière visible une variable.

L'exemple ci-dessus va afficher quelque chose de similaire à :

Récupération de toutes les lignes d'un jeu de résultats de la table 'fruits':
Array
(
    [0] => Array
        (
            [name] => apple
            [color] => green
        )

    [1] => Array
        (
            [name] => lemon
            [color] => yellow
        )

    [2] => Array
        (
            [name] => watermelon
            [color] => red
        )

)

On peut ajouter plusieurs arguments :

fetch_argument

Cet argument prend une valeur différente en fonction de la valeur de l'argument fetch_style:

Exemple #1 Récupération de toutes les valeurs d'une seule colonne depuis un jeu de résultats

 $sth = $db->prepare("SELECT name, color FROM fruits");
 $sth->execute();
 
$result = $sth->fetchAll(PDO::FETCH_COLUMN, 0);
 
 
 debug($result);

L'exemple ci-dessus va afficher quelque chose de similaire à :

Array
(
    [0] => apple
    [1] => lemon
    [2] => watermelon
)

 

Exemple #2 Grouper toutes les valeurs d'une seule colonne

 $sth = $db->prepare("SELECT name, color FROM fruits");
 $sth->execute();
 
$result = $sth->fetchAll(PDO::FETCH_COLUMN|PDO::FETCH_GROUP);
 
 
 debug($result);

L'exemple ci-dessus va afficher quelque chose de similaire à :

Array
(
    [apple] => Array
        (
            [0] => green
        )

    [lemon] => Array
        (
            [0] => yellow
        )

    [watermelon] => Array
        (
            [0] => red
        )

)

Exemple #3 Instancier une classe pour chaque résultat

 class fruits {
    public $name;
    public $colour;
}
 
 $sth = $db->prepare("SELECT name, color FROM fruits");
 $sth->execute();
 
$result = $sth->fetchAll(PDO::FETCH_CLASS, "fruits");
 
 
 debug($result);

L'exemple ci-dessus va afficher quelque chose de similaire à :

Array
(
    [0] => fruits Object
        (
            [name] => apple
            [colour] => 
            [color] => green
        )

    [1] => fruits Object
        (
            [name] => lemon
            [colour] => 
            [color] => yellow
        )

    [2] => fruits Object
        (
            [name] => watermelon
            [colour] => 
            [color] => red
        )

)

 

Exemple #4 Appel d'une fonction pour chaque résultat

function fruit($name, $colour) {
    return "{$name}: {$colour}";
}
 
 $sth = $db->prepare("SELECT name, color FROM fruits");
 $sth->execute();
 
$result = $sth->fetchAll(PDO::FETCH_FUNC, "fruit");
 
 
 debug($result);

L'exemple ci-dessus va afficher quelque chose de similaire à :

Array
(
    [0] => apple: green
    [1] => lemon: yellow
    [2] => watermelon: red
)

Date de publication:  12/10/2022 par admin10

Dernière modification: le 21/01/2023 18:07:24 par admin10

Chargement...

Les cours de PHP sur toutes les facettes.

Les cours de PHP sur toutes les facettes.

Page précédent 223 225 227 229 231 233 235 237 239 Page suivante

Laisser un commentaire





chio67


Cv94 Mardi 16 Avril 2024

Aucun commentaire pour le moment concernant le sujet « PDOStatement::fetchAll Retourne un tableau contenant toutes les lignes du jeu d'enregistrements »!