⊗ppSpPDADG 66 of 83 menu

Todos os registros do resultado no PDO em PHP

É possível obter imediatamente um array com todos os registros do resultado de uma consulta. Isso é feito usando o método fetchAll. Vamos analisar os vários modos de funcionamento deste método. Todos os exemplos serão para a tabela de teste.

Obtendo um array simples

Vamos aplicar o método fetchAll para obter um array simples de dados. Para isso, deixaremos os parâmetros do método vazios:

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

Resultado da execução do código:

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

Obtendo uma única coluna

Vamos obter apenas uma coluna da tabela. Para isso, passaremos para o método fetchAll o parâmetro FETCH_COLUMN:

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

Resultado da execução do código:

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

Obtendo par chave-valor

Vamos obter os dados na forma de par chave-valor, onde a chave será o id, e o valor será o nome do usuário. Para isso, no parâmetro do método fetchAll passaremos o modo FETCH_KEY_PAIR:

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

Resultado da execução do código:

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

Obtendo registros com um campo único

Pode-se fazer com que um campo único (geralmente o id) se torne a chave para cada subarray:

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

Resultado da execução do código:

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

Exercícios práticos

Exiba todos os usuários da tabela users, usando o método descrito na lição.

Exiba um único registro de dados da tabela users.

Exiba o nome e a idade dos usuários na forma de par chave-valor.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar