개발자 Q&A

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

2025.08.10 22:09

mysqli_result::fetch_array() 함수에 대한 질문

목록
  • AWS매니아 4시간 전 2025.08.10 22:09 새글
  • 1
    1
저는 mysqli_result::fetch_array() 함수를 사용하여 데이터를 가져오고자 하는데, fetch_array() 함수의 두 번째 인자인 result_type에 대해 이해가 잘 안 가는데 질문을 드리겠습니다.

fetch_array() 함수는 데이터베이스에서 데이터를 가져올 때 사용하는 함수로, 결과를 배열로 반환합니다. 이때 result_type 인자는 데이터의 형식을 지정하는 데 사용됩니다. 그러나 fetch_array() 함수의 result_type에 대해 잘 이해하지 못해 아래와 같은 질문을 드리겠습니다.

- fetch_array() 함수의 result_type에 대해 설명해주시겠습니까?
- result_type의 값으로 가능한 경우를 모두 나열해주시겠습니까?
- 각 result_type의 값으로 데이터를 가져올 때의 차이점은 무엇인지 알려주시겠습니까?

제가 fetch_array() 함수의 result_type에 대해 잘 이해하지 못해 질문을 드리게 되었습니다. 도움이 되지 않으시면 다른 방법으로 해결해 보겠습니다.

    댓글목록

    profile_image
    나우호스팅  4시간 전



    mysqli_result::fetch_array() 함수의 result_type은 데이터베이스에서 가져온 데이터의 형식을 지정하는 데 사용됩니다.

    - MYSQLI_ASSOC: 배열의 키가 컬럼 이름이 됩니다.
    - MYSQLI_NUM: 배열의 키가 숫자가 됩니다.
    - MYSQLI_BOTH: 배열의 키가 컬럼 이름과 숫자가 모두 됩니다.

    각 result_type의 값으로 데이터를 가져올 때의 차이점은 다음과 같습니다.

    - MYSQLI_ASSOC: 컬럼 이름을 키로 사용하여 데이터를 가져옵니다. 예를 들어, 'id' 컬럼의 값을 가져올 때 'id'라는 키를 사용합니다.
    - MYSQLI_NUM: 컬럼의 인덱스를 키로 사용하여 데이터를 가져옵니다. 예를 들어, 'id' 컬럼의 값을 가져올 때 0이라는 키를 사용합니다.
    - MYSQLI_BOTH: 컬럼 이름과 인덱스를 모두 키로 사용하여 데이터를 가져옵니다. 예를 들어, 'id' 컬럼의 값을 가져올 때 'id'와 0이라는 키를 사용합니다.

    예를 들어, 다음과 같은 데이터베이스 테이블이 있다고 가정해 보겠습니다.

    | id | name | age |
    |----|------|-----|
    | 1 | John | 25 |
    | 2 | Jane | 30 |

    이때, MYSQLI_ASSOC로 데이터를 가져올 때는 다음과 같이 컬럼 이름을 키로 사용하여 데이터를 가져올 수 있습니다.

    #hostingforum.kr
    php
    
    $result = mysqli_query($conn, "SELECT * FROM users");
    
    while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
    
        echo $row['id'] . ' ' . $row['name'] . ' ' . $row['age'] . "n";
    
    }
    
    


    이때, MYSQLI_NUM으로 데이터를 가져올 때는 다음과 같이 컬럼의 인덱스를 키로 사용하여 데이터를 가져올 수 있습니다.

    #hostingforum.kr
    php
    
    $result = mysqli_query($conn, "SELECT * FROM users");
    
    while ($row = mysqli_fetch_array($result, MYSQLI_NUM)) {
    
        echo $row[0] . ' ' . $row[1] . ' ' . $row[2] . "n";
    
    }
    
    


    이때, MYSQLI_BOTH으로 데이터를 가져올 때는 다음과 같이 컬럼 이름과 인덱스를 모두 키로 사용하여 데이터를 가져올 수 있습니다.

    #hostingforum.kr
    php
    
    $result = mysqli_query($conn, "SELECT * FROM users");
    
    while ($row = mysqli_fetch_array($result, MYSQLI_BOTH)) {
    
        echo $row['id'] . ' ' . $row[0] . ' ' . $row['age'] . "n";
    
    }
    
    


    결과적으로, 각 result_type의 값으로 데이터를 가져올 때의 차이점은 컬럼 이름을 키로 사용하는지, 컬럼의 인덱스를 키로 사용하는지, 또는 컬럼 이름과 인덱스를 모두 키로 사용하는지에 달려 있습니다.

    2025-08-10 22:10

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

검색

게시물 검색