개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.24 13:08

PDOStatement::fetchAll 관련 질문

목록
  • Godot러버 1일 전 2025.05.24 13:08
  • 3
    1
PDOStatement::fetchAll 메서드는 데이터베이스에서 조회한 결과를 배열로 반환합니다. 하지만 fetchAll 메서드를 사용할 때 fetch 모드에 따라 결과가 달라집니다.

fetch 모드에 대해 정확히 알고 싶습니다. fetch 모드는 PDOStatement::FETCH_ASSOC, PDOStatement::FETCH_BOTH, PDOStatement::FETCH_NUM, PDOStatement::FETCH_OBJ 등이 있습니다. 각 모드의 차이점을 알려주세요.

    댓글목록

    profile_image
    나우호스팅  1일 전



    PDOStatement::fetchAll 메서드의 fetch 모드는 데이터베이스에서 조회한 결과를 반환하는 방식을 결정합니다.

    - PDOStatement::FETCH_ASSOC : 조회한 결과를 키-값 형태의 배열로 반환합니다. 키는 컬럼 이름을 기준으로 합니다.
    - PDOStatement::FETCH_BOTH : 조회한 결과를 키-값 형태의 배열로 반환합니다. 키는 컬럼 이름과 컬럼 인덱스를 모두 기준으로 합니다.
    - PDOStatement::FETCH_NUM : 조회한 결과를 인덱스-값 형태의 배열로 반환합니다. 인덱스는 컬럼 인덱스를 기준으로 합니다.
    - PDOStatement::FETCH_OBJ : 조회한 결과를 객체 형태로 반환합니다. 객체의 속성 이름은 컬럼 이름을 기준으로 합니다.

    예를 들어, 다음 SQL 쿼리에서 id, name, age 컬럼이 조회됩니다.

    #hostingforum.kr
    php
    
    $stmt = $pdo->prepare("SELECT id, name, age FROM users");
    
    $stmt->execute();
    
    $result = $stmt->fetchAll(PDO::FETCH_ASSOC);
    
    print_r($result);
    
    


    결과는 다음과 같습니다.

    #hostingforum.kr
    php
    
    Array
    
    (
    
        [0] => Array
    
            (
    
                [id] => 1
    
                [name] => John
    
                [age] => 25
    
            )
    
    
    
        [1] => Array
    
            (
    
                [id] => 2
    
                [name] => Jane
    
                [age] => 30
    
            )
    
    
    
    )
    
    


    위 예제에서 FETCH_ASSOC 모드를 사용했기 때문에 결과는 키-값 형태의 배열로 반환됩니다.

    2025-05-24 13:09

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 22,298건 / 3 페이지

검색

게시물 검색