PDO natijasidagi barcha qatorlar PHPda
So'rov natijasidagi barcha
qatorlarning massivini darhol olish mumkin.
Buning uchun fetchAll metodi
ishlatiladi.
Keling, ushbu metodning turli
ishlash rejimlarini ko'rib chiqaylik.
Barcha misollar test jadvali uchun bo'ladi.
Oddiy massivni olish
Keling, oddiy ma'lumotlar massivini olish
uchun fetchAll metodini qo'llaymiz.
Buning uchun metod parametrlarini
bo'sh qoldiramiz:
<?php
$res = $pdo->query('SELECT * FROM users');
$row = $res->fetchAll();
var_dump($row);
?>
Kodni bajarish natijasi:
[
[
'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,
],
]
Bitta ustunni olish
Keling, jadvaldan faqat bitta ustunni
olamiz. Buning uchun fetchAll
metodiga FETCH_COLUMN parametrini
o'tkazamiz:
<?php
$res = $pdo->query('SELECT name FROM users');
$row = $res->fetchAll(PDO::FETCH_COLUMN);
var_dump($row);
?>
Kodni bajarish natijasi:
[
'name1',
'name2',
'name3',
'name4',
'name5',
]
Kal-qiymat juftligini olish
Keling, ma'lumotlarni kal-qiymat
juftligi ko'rinishida olamiz, bunda kalit sifatida id,
qiymat sifatida esa foydalanuvchi nomi bo'ladi. Buning uchun
fetchAll metodining parametriga
FETCH_KEY_PAIR rejimini o'tkazamiz:
<?php
$res = $pdo->query('SELECT id, name FROM users');
$row = $res->fetchAll(PDO::FETCH_KEY_PAIR);
var_dump($row);
?>
Kodni bajarish natijasi:
[
1 => 'name1',
2 => 'name2',
3 => 'name3',
4 => 'name4',
5 => 'name5',
]
Noyib maydonga ega yozuvlarni olish
Noyib maydon (odatda
id), har bir
pastki massiv uchun kalit bo'lishi mumkin:
<?php
$res = $pdo->query('SELECT * FROM users');
$row = $res->fetchAll(PDO::FETCH_UNIQUE);
var_dump($row);
?>
Kodni bajarish natijasi:
[
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,
],
]
Amaliy vazifalar
users jadvalidagi
barcha foydalanuvchilarni
darsda tavsiflangan metod
yordamida ekranga chiqaring.
users jadvalidan
bitta qator ma'lumotlarini
ekranga chiqaring.
Foydalanuvchilarning ismi va yoshini kal-qiymat juftligi ko'rinishida ekranga chiqaring.