Semua Baris dari Hasil Query di PDO PHP
Kita bisa langsung mendapatkan array dari semua
baris hasil query.
Ini dilakukan dengan metode fetchAll.
Mari kita lihat berbagai mode kerja
dari metode ini.
Semua contoh akan menggunakan tabel tes.
Mendapatkan Array Sederhana
Mari kita terapkan metode fetchAll
untuk mendapatkan array data sederhana.
Untuk melakukannya, biarkan parameter metode
kosong:
<?php
$res = $pdo->query('SELECT * FROM users');
$row = $res->fetchAll();
var_dump($row);
?>
Hasil eksekusi kode:
[
[
'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,
],
]
Mendapatkan Satu Kolom
Mari kita ambil hanya satu kolom
dari tabel. Untuk melakukannya, berikan
parameter FETCH_COLUMN ke dalam
metode fetchAll:
<?php
$res = $pdo->query('SELECT name FROM users');
$row = $res->fetchAll(PDO::FETCH_COLUMN);
var_dump($row);
?>
Hasil eksekusi kode:
[
'name1',
'name2',
'name3',
'name4',
'name5',
]
Mendapatkan Pasangan Kunci-Nilai
Mari kita dapatkan data dalam bentuk
pasangan kunci-nilai, di mana kuncinya adalah id,
dan nilainya adalah nama pengguna. Untuk melakukannya, berikan mode
FETCH_KEY_PAIR sebagai parameter
metode fetchAll:
<?php
$res = $pdo->query('SELECT id, name FROM users');
$row = $res->fetchAll(PDO::FETCH_KEY_PAIR);
var_dump($row);
?>
Hasil eksekusi kode:
[
1 => 'name1',
2 => 'name2',
3 => 'name3',
4 => 'name4',
5 => 'name5',
]
Mendapatkan Data dengan Field Unik
Kita dapat membuat field unik (biasanya
id) menjadi kunci untuk setiap
sub-array:
<?php
$res = $pdo->query('SELECT * FROM users');
$row = $res->fetchAll(PDO::FETCH_UNIQUE);
var_dump($row);
?>
Hasil eksekusi kode:
[
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,
],
]
Tugas Praktik
Tampilkan semua pengguna
dari tabel users,
menggunakan metode yang dijelaskan
dalam pelajaran.
Tampilkan satu baris data
dari tabel users.
Tampilkan nama dan usia pengguna dalam bentuk pasangan kunci-nilai.