현재 위치: > 최신 기사 목록> connect () + mysqli_fetch_assoc ()는 데이터 읽기를 구현합니다

connect () + mysqli_fetch_assoc ()는 데이터 읽기를 구현합니다

M66 2025-06-02

PHP에서 MySQL 데이터베이스를 처리 할 때 성능 및 데이터 수집 효율성이 종종 개발자가주의를 기울이는 주요 문제입니다. Connect () 함수를 사용하여 MySQLI_FETCH_ASSOC () 함수로 데이터베이스 연결을 설정하여 데이터를 읽을 수 있도록 코드의 가독성을 향상시킬 수있을뿐만 아니라 응용 프로그램의 실행 효율을 어느 정도 향상시킬 수 있습니다. 이 기사는 두 가지를 통해 효율적인 데이터를 읽는 방법을 심층적으로 탐구합니다.

1. Connect () 함수를 사용하여 데이터베이스 연결을 설정하십시오.

PHP에서는 일반적으로 Connect () 함수를 캡슐화하여 데이터베이스 연결 객체를 작성하고 반환합니다. 이것의 장점은 재사용 성과 명확한 코드를 가지고 있다는 것입니다.

 function connect() {
    $host = 'localhost';
    $user = 'db_user';
    $password = 'db_pass';
    $database = 'my_database';

    $conn = new mysqli($host, $user, $password, $database);

    if ($conn->connect_error) {
        die("연결이 실패했습니다: " . $conn->connect_error);
    }

    return $conn;
}

이 기능은 데이터베이스 연결 프로세스를 캡슐화하고 연결 오류를 처리합니다. 이 구조는 연결 로직을 한 번만 유지해야하므로 코드 유지 보수 작업을 단순화합니다.

2. MySQLI_FETCH_ASSOC ()를 사용하여 데이터를 효율적으로 읽으십시오

mysqli_fetch_assoc () 함수는 MySQLI 확장에서 일반적으로 사용되는 결과 세트 처리 기능입니다. 필드 이름으로 키 이름을 가진 연관 배열을 반환하고 키 값은 해당 필드의 값입니다. 이 방법은 구조화 된 데이터를 처리 할 때 특히 편리합니다.

다음은 완전한 데이터 읽기 예입니다.

 $conn = connect();

$sql = "SELECT id, username, email FROM users";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    while($row = mysqli_fetch_assoc($result)) {
        echo "ID: " . $row["id"] . " - 사용자 이름: " . $row["username"] . " - 우편: " . $row["email"] . "<br>";
    }
} else {
    echo "기록이 없습니다";
}

$conn->close();

우위 분석

  1. 메모리 사용량이 적습니다 <br> mysqli_fetch_array () 와 비교하여 모든 유형의 데이터를 반환하는 것과 비교하여 (수치 인덱스 및 연결 색인 포함) mysqli_fetch_assoc ()는 연관 배열 만 반환하여 메모리 오버 헤드를 저장합니다.

  2. 더 읽기 쉬운 코드 <br> 필드 이름을 사용하여 배열 요소에 액세스하는 것이 $ row [ "username"] 같이 더 직관적입니다.

  3. JSON을 쉽게 변환하기 쉬운 <br> 데이터베이스에서 얻은 연관 배열은 JSON 객체로 직접 변환 할 수 있으며, 이는 편안한 API를 구축 할 때 매우 유용합니다.

     $data = [];
    while($row = mysqli_fetch_assoc($result)) {
        $data[] = $row;
    }
    echo json_encode($data);
    

3. 사용의 예 : 프론트 엔드와 함께 사용자 목록 표시

위에서 언급 한 메소드와 결합하여 웹 페이지의 프론트 엔드에 사용자 목록 데이터를 표시해야한다고 가정합니다. HTML 테이블을 빠르게 생성 할 수 있습니다.

 $conn = connect();

$sql = "SELECT id, username, email FROM users";
$result = $conn->query($sql);

echo "<table border='1'>";
echo "<tr><th>ID</th><th>사용자 이름</th><th>우편</th></tr>";

while($row = mysqli_fetch_assoc($result)) {
    echo "<tr>";
    echo "<td>" . $row["id"] . "</td>";
    echo "<td>" . $row["username"] . "</td>";
    echo "<td><a href='https://m66.net/user/" . $row["id"] . "'>" . $row["email"] . "</a></td>";
    echo "</tr>";
}

echo "</table>";

$conn->close();

이 예에서는 도메인 이름을 출력 요구 사항에 대한 사양을 충족하는 URL과 관련된 모든 부품에 대해 M66.NET 으로 바꿉니다.

결론

Connect () 함수를 합리적으로 사용하여 데이터베이스 연결 로직을 캡슐화하고 MySQLI_Fetch_Assoc () 로 데이터를 효율적으로 획득함으로써 응용 프로그램 성능을 향상시킬뿐만 아니라 코드를보다 간결하고 이해하기 쉽게 만들 수 있습니다. 일일 개발에서는이 모델을 인프라의 일부로 사용하는 것이 좋습니다.