> 백엔드 개발 > PHP 튜토리얼 > 동일한 결과 세트에서 mysqli_fetch_array()를 여러 번 재사용할 수 있습니까?

동일한 결과 세트에서 mysqli_fetch_array()를 여러 번 재사용할 수 있습니까?

Patricia Arquette
풀어 주다: 2024-11-02 14:48:03
원래의
1005명이 탐색했습니다.

Can You Reuse mysqli_fetch_array() Multiple Times on the Same Result Set?

동일한 결과에 대해 mysqli_fetch_array()를 여러 번 활용하는 방법

데이터베이스 기반 앱으로 작업할 때 반복적으로 처리해야 하는 경우가 많습니다. 반환된 데이터 행. MySQL에서 mysqli_fetch_array() 함수는 쿼리 결과에서 데이터를 추출하는 데 중요한 역할을 합니다. 그러나 mysqli_fetch_array()를 사용하여 동일한 결과 세트에 여러 번 액세스하려고 하면 일반적인 문제가 발생하여 예상치 못한 동작이 발생합니다.

이 문제의 원인은 mysqli_fetch_array()의 동작 때문입니다. 호출할 때마다 결과 집합 내의 커서가 다음 행으로 이동합니다. 결과적으로 동일한 결과에 대해 두 번 사용하면 처음 두 행에만 액세스할 수 있습니다. 이러한 한계를 극복하려면 데이터 조작을 출력에서 ​​분리해야 합니다.

1. 데이터 캡처:

첫 번째 단계에서는 모든 데이터를 배열로 추출합니다.

<code class="php">$db_res = mysqli_query( $db_link, $sql );
$data = array();
while ($row = mysqli_fetch_assoc($db_res))
{
    $data[] = $row;
}</code>
로그인 후 복사

또는 PHP 5.3의 fetch_all() 메서드를 사용합니다.

<code class="php">$db_res = mysqli_query( $db_link, $sql );
$data   = $db_res->fetch_all(MYSQLI_ASSOC);</code>
로그인 후 복사

2. 데이터를 여러 번 활용:

배열에 캡처한 후에는 이를 여러 번 반복하여 모든 행에 대한 액세스를 보장할 수 있습니다.

<code class="php">// Top row
foreach ($data as $row)
{</code>
로그인 후 복사

위 내용은 동일한 결과 세트에서 mysqli_fetch_array()를 여러 번 재사용할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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