집 >데이터 베이스 >MySQL 튜토리얼 >내 `mysql_fetch_array`가 중복된 데이터를 반환하는 이유는 무엇입니까?
mysql_fetch_array를 사용한 이중 결과
제공된 코드에서 쿼리를 실행하여 ID를 기반으로 인사 데이터를 가져오고 결과를 다음과 같이 반환합니다. 연관 배열. 그러나 배열을 반복하고 해당 값을 인쇄하면 중복된 데이터가 발생합니다.
이는 mysql_fetch_array가 기본적으로 연관 키와 숫자 키를 모두 검색하기 때문입니다. 각 키-값 쌍은 두 번 표시되어 관찰한 출력이 두 배가 됩니다.
해결책:
연관 키만 검색하려면 mysql_fetch_array 대신 mysql_fetch_assoc을 사용하세요. 이렇게 하면 반환된 배열이 연관 키만 포함하도록 제한되어 열 이름이 해당 값과 일치하게 됩니다. 이렇게 하면 이중 출력 문제가 해결됩니다.
<code class="php">$query_result_array = mysql_fetch_assoc($query_result);</code>
또는 mysql_fetch_array의 두 번째 매개변수를 지정하여 연관 키 또는 숫자 키만 검색할 수 있습니다.
<code class="php">$query_result_array = mysql_fetch_array($query_result, MYSQL_ASSOC); // associative keys only $query_result_array = mysql_fetch_array($query_result, MYSQL_NUM); // numeric keys only</code>
mysql_fetch_assoc을 사용하거나 설정을 사용하여 두 번째 매개변수를 적절하게 사용하면 중복 데이터를 제거하고 연관에서 각 값의 단일 인스턴스를 얻을 수 있습니다. 배열.
위 내용은 내 `mysql_fetch_array`가 중복된 데이터를 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!