Kaikki rivit tuloksesta PDO:ssa PHP:ssä
Voit heti saada taulukon kaikista
riveistä kyselyn tuloksesta.
Tämä tehdään käyttämällä metodia fetchAll.
Katsotaanpa erilaisia tämän metodin toimintatiloja.
Kaikki esimerkit koskevat testitaulukkoa.
Yksinkertaisen taulukon saaminen
Sovelletaan metodia fetchAll
saadaksemme yksinkertaisen datataulukon.
Jätä tätä varten metodin parametrit
tyhjiksi:
<?php
$res = $pdo->query('SELECT * FROM users');
$row = $res->fetchAll();
var_dump($row);
?>
Koodin suorituksen tulos:
[
[
'id' => 1,
'name' => 'name1',
'age' => 21,
'salary' => 500,
],
[
'id' => 2,
'name' => 'name2',
'age' => 22,
'salary' => 600,
],
[
'id' => 3,
'name' => 'name3',
'age' => 23,
'salary' => 600,
],
[
'id' => 4,
'name' => 'name4',
'age' => 24,
'salary' => 700,
],
[
'id' => 5,
'name' => 'name5',
'age' => 25,
'salary' => 800,
],
]
Yhden sarakkeen saaminen
Saadaan vain yksi sarake
taulukosta. Lähetä tätä varten
metodille fetchAll parametri
FETCH_COLUMN:
<?php
$res = $pdo->query('SELECT name FROM users');
$row = $res->fetchAll(PDO::FETCH_COLUMN);
var_dump($row);
?>
Koodin suorituksen tulos:
[
'name1',
'name2',
'name3',
'name4',
'name5',
]
Avain-arvo -parin saaminen
Saadaan data muodossa
avain-arvo -pari, jossa avaimena on id,
ja arvona käyttäjän nimi. Lähetä parametriin
metodia fetchAll tilaksi
FETCH_KEY_PAIR:
<?php
$res = $pdo->query('SELECT id, name FROM users');
$row = $res->fetchAll(PDO::FETCH_KEY_PAIR);
var_dump($row);
?>
Koodin suorituksen tulos:
[
1 => 'name1',
2 => 'name2',
3 => 'name3',
4 => 'name4',
5 => 'name5',
]
Tietueiden saaminen yksilöllisellä kentällä
Voit tehdä niin, että yksilöllisestä kentästä (yleensä
se on id) tulee avain jokaiselle
alitaulukolle:
<?php
$res = $pdo->query('SELECT * FROM users');
$row = $res->fetchAll(PDO::FETCH_UNIQUE);
var_dump($row);
?>
Koodin suorituksen tulos:
[
1 => [
'id' => 1,
'name' => 'name1',
'age' => 21,
'salary' => 500,
],
2 => [
'id' => 2,
'name' => 'name2',
'age' => 22,
'salary' => 600,
],
3 => [
'id' => 3,
'name' => 'name3',
'age' => 23,
'salary' => 600,
],
4 => [
'id' => 4,
'name' => 'name4',
'age' => 24,
'salary' => 700,
],
5 => [
'id' => 5,
'name' => 'name5',
'age' => 25,
'salary' => 800,
],
]
Käytännön tehtävät
Tulosta kaikki käyttäjät
taulukosta users,
käyttäen tässä oppitunnissa kuvattua
metodia.
Tulosta yksi datarivi
taulukosta users.
Tulosta käyttäjien nimi ja ikä avain-arvo -parina.