⊗ppSpPDADG 66 of 83 menu

PHP PDO에서 결과의 모든 행 가져오기

쿼리 결과의 모든 행을 배열로 바로 가져올 수 있습니다. 이는 fetchAll 메서드를 사용하여 수행됩니다. 이 메서드의 다양한 작동 모드를 살펴보겠습니다. 모든 예제는 테스트 테이블을 기준으로 합니다.

단순 배열 가져오기

fetchAll 메서드를 사용하여 단순 데이터 배열을 가져와 봅시다. 이를 위해 메서드 매개변수를 비워둡니다:

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

코드 실행 결과:

[ [ '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 $res = $pdo->query('SELECT name FROM users'); $row = $res->fetchAll(PDO::FETCH_COLUMN); var_dump($row); ?>

코드 실행 결과:

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

키-값 쌍 가져오기

키가 id이고 값이 사용자 이름인 키-값 쌍 형태로 데이터를 가져와 봅시다. 이를 위해 fetchAll 메서드의 매개변수에 FETCH_KEY_PAIR 모드를 전달합니다:

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

코드 실행 결과:

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

고유 필드를 가진 레코드 가져오기

고유 필드(일반적으로 id)를 각 하위 배열의 키로 만들 수 있습니다:

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

코드 실행 결과:

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

실습 문제

본 강의에서 설명한 메서드를 사용하여 users 테이블에서 모든 사용자를 출력하세요.

users 테이블에서 한 행의 데이터를 출력하세요.

사용자의 이름과 나이를 키-값 쌍 형태로 출력하세요.

한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부