> 백엔드 개발 > PHP 문제 > PHP가 쿼리 결과를 배열로 변환하는 방법 살펴보기

PHP가 쿼리 결과를 배열로 변환하는 방법 살펴보기

PHPz
풀어 주다: 2023-04-23 09:24:28
원래의
586명이 탐색했습니다.

PHP를 사용하여 데이터베이스 쿼리를 수행하는 개발자의 경우 쿼리 결과를 배열로 변환하는 것이 일반적인 작업 중 하나일 수 있습니다. 왜냐하면 배열은 데이터 처리 및 작업을 용이하게 하기 위해 PHP에서 널리 사용되기 때문입니다. 이 기사에서는 쿼리 결과를 배열로 변환하는 방법에 대한 여러 가지 방법을 살펴보겠습니다.

1. mysqli_fetch_array 함수를 사용하세요.

mysqli_fetch_array 함수는 쿼리 결과를 배열로 변환하는 쉬운 방법입니다. 이 함수에는 쿼리 결과 개체와 반환 유형이라는 두 가지 매개 변수가 필요합니다. 반환 유형 매개 변수에는 기본값이 있으며 반환 유형을 변경하지 않으려면 생략할 수 있습니다. 다음은 기본 예입니다.

$query = "SELECT * FROM my_table";
$result = mysqli_query($conn, $query);

while($row = mysqli_fetch_array($result)){
  $my_array[] = $row;
}
로그인 후 복사

위 코드에서는 먼저 쿼리를 실행하고 결과를 $result 변수에 저장합니다. 그런 다음 while 루프를 사용하여 결과 집합의 각 행을 반복하고 mysqli_fetch_array를 사용하여 현재 행을 배열로 변환하고 이를 $my_array 배열에 추가합니다. 마지막으로 모든 행이 배열로 변환되면 필요한 모든 작업에 배열을 사용할 수 있습니다.

2. mysqli_fetch_assoc 함수를 사용하세요.

mysqli_fetch_assoc 함수는 쿼리 결과를 배열로 변환하는 또 다른 방법입니다. 이 함수는 현재 행을 열 이름을 키로 사용하는 연관 배열로 반환합니다. 예를 들면 다음과 같습니다.

$query = "SELECT * FROM my_table";
$result = mysqli_query($conn, $query);

while($row = mysqli_fetch_assoc($result)){
  $my_array[] = $row;
}
로그인 후 복사

위 코드에서는 mysqli_fetch_array 함수와 달리 mysqli_fetch_assoc 함수를 사용하고 있습니다. 이런 방식으로 연관 배열을 얻습니다. 나머지 단계는 방법 1과 동일하며 결과는 최종적으로 배열에 배치됩니다.

3. mysqli_fetch_object 함수를 사용하세요.

mysqli_fetch_object 함수는 쿼리 결과를 배열로 변환하는 또 다른 방법입니다. 이 함수는 현재 행을 객체로 반환합니다. 여기서 객체의 속성 이름은 각 필드의 이름에 해당합니다. 예를 들면 다음과 같습니다.

$query = "SELECT * FROM my_table";
$result = mysqli_query($conn, $query);

while($row = mysqli_fetch_object($result)){
  $my_array[] = $row;
}
로그인 후 복사

위 코드에서는 처음 두 가지 방법과 달리 mysqli_fetch_object 함수를 사용하고 있습니다. 결과를 배열 대신 객체로 변환하려는 경우 이 함수를 사용할 수 있습니다. 개체의 속성 이름은 각 필드의 이름에 해당합니다.

4. PDOStatement::fetch 함수를 사용하세요.

PDO를 사용하여 쿼리할 때 PDOStatement::fetch 함수를 사용하여 쿼리 결과를 배열로 변환할 수 있습니다. mysqli_fetch_array 함수와 마찬가지로 이 함수에는 두 개의 매개변수, 즉 반환 유형과 선택적 매개변수인 $cursor_orientation이 필요합니다. 다음은 기본 예입니다.

$query = "SELECT * FROM my_table";
$pdo_stmt = $pdo->query($query);

while($row = $pdo_stmt->fetch(PDO::FETCH_ASSOC)){
  $my_array[] = $row;
}
로그인 후 복사

위 코드에서는 먼저 쿼리를 실행하고 결과를 $pdo_stmt 변수에 저장합니다. 그런 다음 while 루프를 사용하여 결과 집합의 각 행을 반복하고 PDOStatement::fetch 함수를 사용하여 현재 행을 연관 배열로 반환하고 이를 $my_array 배열에 추가합니다. 마지막으로 모든 행이 배열로 변환되면 필요한 모든 작업에 배열을 사용할 수 있습니다.

요약

이 문서에서는 쿼리 결과를 배열로 변환하는 네 가지 방법을 살펴보았습니다. mysqli를 사용하든 PDO를 사용하든 쿼리 방법 중 하나를 사용할 수 있습니다. 특정 요구 사항에 따라 결과 변환에 적합한 방법을 선택하십시오. 어떤 방법을 선택하든 사용하기 전에 결과 집합이 비어 있지 않은지 확인하세요. 그렇지 않으면 치명적인 오류가 발생합니다.

위 내용은 PHP가 쿼리 결과를 배열로 변환하는 방법 살펴보기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿