mysqli_result :: fetch_row는 결과 세트에서 데이터 행을 얻는 데 사용되는 mysqli 확장자의 메소드입니다. 리턴 값은 행의 데이터를 포함하는 인덱스 배열이며, 각 요소는 쿼리 결과의 필드 값에 해당합니다. 단일의 데이터 열이 얻어지는 경우 일반적으로 단일 데이터 요소가 포함 된 배열을 반환합니다.
샘플 코드 :
<?php
// 데이터베이스에 연결하십시오
$mysqli = new mysqli("localhost", "username", "password", "database");
// 연결이 성공했는지 확인하십시오
if ($mysqli->connect_error) {
die("Connection failed: " . $mysqli->connect_error);
}
// 쿼리를 실행하십시오
$result = $mysqli->query("SELECT username FROM users");
// 단일 열 데이터를 얻습니다
$row = $result->fetch_row();
echo $row[0]; // 데이터의 첫 번째 열은 쿼리 결과를 출력합니다,즉, 사용자 이름입니다
?>
이 예에서 $ row [0] 는 사용자 이름 열의 데이터입니다. Fetch_row 함수는 단일 열 또는 단일 행의 데이터 만 얻는 경우에 매우 적합합니다.
데이터베이스에서 여러 사용자 이름을 가진 열을 쿼리한다고 가정 해보십시오.이 데이터를 처리하는 방법은 무엇입니까? 루핑을 통해 각 데이터 행을 반복하거나 추가 작업을 위해 결과를 배열에 저장할 수 있습니다.
쿼리 결과가 모든 사용자 이름을 얻는 것과 같은 여러 행의 데이터 열의 열인 경우 fetch_row 및 while 루프를 사용하여 각 행의 결과를 반복 할 수 있습니다.
<?php
// 모든 사용자 이름을 쿼리하십시오
$query = "SELECT username FROM users";
$result = $mysqli->query($query);
// 모든 사용자 이름을 저장하십시오
$usernames = [];
while ($row = $result->fetch_row()) {
$usernames[] = $row[0];
}
// 모든 사용자 이름을 출력합니다
foreach ($usernames as $username) {
echo $username . "<br>";
}
?>
데이터가 배열로 추출되면 필터링, 정렬, 중복 제거 등과 같은 다양한 처리를 수행 할 수 있습니다. 예를 들어, 특정 키워드가 포함 된 사용자 이름을 필터링하려면 다음을 수행 할 수 있습니다.
<?php
// 필터에는 포함됩니다"admin"사용자 이름
$filtered_usernames = array_filter($usernames, function($username) {
return strpos($username, 'admin') !== false;
});
// 输出过滤后사용자 이름
foreach ($filtered_usernames as $username) {
echo $username . "<br>";
}
?>
Array_Filter 기능을 통해 데이터베이스에서 추출한 단일 열 데이터를 쉽게 처리 할 수 있습니다.
때로는 웹 페이지의 앞쪽 끝에 추출 된 데이터를 표시하거나 URL을 통해 프론트 엔드로 전달해야합니다. 이 데이터를 HTML 페이지의 <code> 태그로 전달해야한다고 가정하면이 데이터를 HTML에 포함시키는 방법의 예는 다음과 같습니다.
<?php
// 출력 사용자 목록 HTML
echo "<ul>";
foreach ($usernames as $username) {
echo "<li><code>m66.net/{$username}</code></li>";
}
echo "</ul>";
?>
여기에 수정 된 URL이 포함 된 각 <li> 태그에 <code> 태그를 포함시킵니다. 이러한 방식으로 프론트 엔드 페이지에 데이터베이스에 데이터를 동적으로 표시 할 수 있습니다.
데이터를 URL과 함께 사용해야하는 경우 <Code> 태그에서 이러한 URL을 직접 생성 할 수 있습니다. 예를 들어:
<?php
// 각 사용자의 개인 홈페이지 링크를 출력하십시오
foreach ($usernames as $username) {
echo "<p>사용자의 개인 홈페이지: <code>https://m66.net/{$username}</code></p>";
}
?>
이 예에서 각 사용자의 개인 홈페이지는 도메인 이름으로 m66.net을 가진 완전한 URL을 동적으로 생성하고 <code> 태그를 통해 형식을 표시하고 표시합니다.
오류 처리 : Fetch_row를 사용하는 경우 쿼리 결과가 비어 있거나 오류가 발생하면 리턴 값이 NULL이 됩니다. fetch_row 의 반환 값을 확인하여 유효한 데이터가 처리되도록 할 수 있습니다.
$row = $result->fetch_row();
if ($row) {
// 처리 데이터
echo $row[0];
} else {
// 데이터가없는 상황을 처리합니다
echo "데이터가 발견되지 않았습니다";
}
성능 최적화 : 데이터 양이 매우 큰 경우 페이징 쿼리를 사용하거나 한 번에 과도한 데이터로드로 인해 과도한 메모리 사용을 피하기 위해 쿼리에서 반환 된 행 수를 제한하는 것이 좋습니다.
이 기사를 통해 mysqli_result :: fetch_row를 사용하여 단일 열 데이터를 얻고 처리하는 방법을 이해 하고이 데이터를 실제 프론트 엔드 페이지에 적용하는 방법을 배울 수 있어야합니다. 이러한 예제가 데이터베이스 작업 및 데이터 프레젠테이션을 더 잘 수행하는 데 도움이되기를 바랍니다.