집 >데이터 베이스 >MySQL 튜토리얼 >내 MySQL `mysql_fetch_array()`가 첫 번째 행만 반환하는 이유는 무엇입니까?
MySQL 상호 작용의 단일 행 검색 이해
제공된 코드에서 mysql_query() 함수를 활용하여 결과를 검색하고 있습니다. MySQL 데이터베이스에서 설정한 후 mysql_fetch_array()를 사용하여 행 가져오기를 시도합니다. 그런데 첫 번째 행만 액세스할 수 있는 문제가 발생했습니다.
mysql_fetch_array() 함수는 결과 세트에서 행을 검색하고 이를 인덱스 배열로 나타냅니다. 귀하의 경우, 각 행은 "a", "b" 또는 "c"로 시작하는 일치하는 아티스트 이름 세트에 해당합니다.
mysql_fetch_array()를 처음 실행하면 첫 번째 아티스트 이름이 배치됩니다. 결과 행을 $array_result 변수에 설정하여 $array_result[0]을 사용할 수 있게 만듭니다. 그러나 매개변수를 지정하지 않고 mysql_fetch_array()에 대한 후속 호출은 항상 첫 번째 행을 반환하고 이전 결과를 덮어씁니다.
결과 세트에서 여러 행을 가져오려면 a 내에서 mysql_fetch_array() 함수를 반복해야 합니다. 고리. 예를 들어, while 또는 foreach 루프를 사용하여 결과 집합을 반복하고 각 반복 내에서 mysql_fetch_array()를 호출하고 결과 배열을 변수에 저장할 수 있습니다. 이렇게 하면 각 행에 개별적으로 액세스하고 원하는 대로 해당 내용을 에코할 수 있습니다.
다음은 while 루프를 사용하는 예입니다.
$array = mysql_query("SELECT artist FROM directory WHERE artist LIKE 'a%' OR artist LIKE 'b%' OR artist LIKE 'c%'"); while($row = mysql_fetch_array($array)) { var_dump($row); // Outputs contents of each row }
이 루프는 결과 집합을 반복하고 다음을 출력합니다. 쿼리에서 사용 가능한 모든 데이터에 액세스하고 에코할 수 있습니다.
위 내용은 내 MySQL `mysql_fetch_array()`가 첫 번째 행만 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!