Ҳамаи сатрҳо аз натиҷа дар PDO дар PHP

Аз натиҷаи дархост метавон ҳамаи сатрҳоро дар якбора ба даст овард. Ин бо усули fetchAll анҷом дода мешавад. Биёед ҳолатҳои гуногуни коркарди ин усулро дида бароем. Ҳамаи мисолҳо барои ҷадвали тестӣ хоҳанд буд.

Гирифтани массиви сода

Биёед усули fetchAll-ро барои гирифтани массиви содаи додаҳо истифода барем. Барои ин параметрҳои усулро холӣ мегузорем:

php<?php
  $res = $pdo->query('SELECT * FROM users');
  
  $row = $res->fetchAll();
  var_dump($row);
?>

Натиҷаи иҷрои код:

php[
  [
    '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,
  ],
]

Гирифтани як сутун

Биёед танҳо як сутунро аз ҷадвал гирем. Барои ин ба усули fetchAll параметри FETCH_COLUMN-ро мегузаронем:

php<?php
  $res = $pdo->query('SELECT name FROM users');
  
  $row = $res->fetchAll(PDO::FETCH_COLUMN);
  var_dump($row);
?>

Натиҷаи иҷрои код:

php[
  'name1',
  'name2',
  'name3',
  'name4',
  'name5',
]

Гирифтани ҷуфти калид-қимат

Биёед додаҳоро дар шакли ҷуфти калид-қимат гирем, ки дар он калид id, ва қимат номи корбар бошад. Барои ин ба параметри усули fetchAll режими FETCH_KEY_PAIR-ро мегузаронем:

php<?php
  $res = $pdo->query('SELECT id, name FROM users');
  
  $row = $res->fetchAll(PDO::FETCH_KEY_PAIR);
  var_dump($row);
?>

Натиҷаи иҷрои код:

php[
  1 => 'name1',
  2 => 'name2',
  3 => 'name3',
  4 => 'name4',
  5 => 'name5',
]

Гирифтани сабтҳо бо майдони ягона

Метавон кард, ки майдони ягона (одатан ин id аст), барои ҳар як зермассив калид шавад:

php<?php
  $res = $pdo->query('SELECT * FROM users');
  
  $row = $res->fetchAll(PDO::FETCH_UNIQUE);
  var_dump($row);
?>

Натиҷаи иҷрои код:

php[
  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,
  ],
]

Масъалаҳои амалӣ

Задание 1

Ҳамаи корбаронро аз ҷадвали users чоп кунед, бо истифода аз усули дар дарс тавсифшуда.

Задание 2

Як сатри додаҳоро аз ҷадвали users чоп кунед.

Задание 3

Ном ва синни корбаронро дар шакли ҷуфти калид-қимат чоп кунед.