> 백엔드 개발 > PHP 튜토리얼 > MySQLi의 `bind_result`와 `get_result`: 어떤 준비된 명령문 방법을 선택해야 합니까?

MySQLi의 `bind_result`와 `get_result`: 어떤 준비된 명령문 방법을 선택해야 합니까?

Mary-Kate Olsen
풀어 주다: 2024-12-04 16:30:17
원래의
828명이 탐색했습니다.
`bind_result` vs. `get_result` in MySQLi: Which Prepared Statement Method Should You Choose?
bind_result

bind_result 방법은 쿼리에서 반환된 열에 변수를 명시적으로 바인딩합니다. 열 구조와 엄격하게 일치하는 변수의 순서가 필요하며 일반적으로 쿼리가 열의 특정 하위 집합을 반환할 때 사용됩니다.

장점:

호환 이전 PHP 버전의 경우

각각에 대해 별도의 변수를 반환합니다. 열

  • 단점:
각 변수의 수동 바인딩

행을 배열로 반환하려면 추가 코드가 필요함

테이블 구조가 변경된 경우 코드 업데이트가 필요합니다. 변경사항
  • get_result
  • get_result 메서드는 쿼리의 전체 결과 집합이 포함된 개체를 반환합니다. MySQL 네이티브 드라이버(mysqlnd)가 필요하며 더 큰 유연성을 제공합니다.
장점:

반환된 행의 데이터가 포함된 연관/열거 배열 또는 객체를 반환합니다.

다음을 사용하여 반환된 모든 행을 한 번에 가져올 수 있습니다. fetch_all()

  • 단점:
MySQL 네이티브 드라이버 필요

예: 바인딩_result

  • 예: get_result

결론

<?php
$query1 = 'SELECT id, first_name, last_name, username FROM `table` WHERE id = ?';
$id = 5;

$stmt = $mysqli->prepare($query1);
$stmt->bind_param('i', $id);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($id, $first_name, $last_name, $username);

while ($stmt->fetch()) {
    echo 'ID: ' . $id . '<br>';
    echo 'First Name: ' . $first_name . '<br>';
    echo 'Last Name: ' . $last_name . '<br>';
    echo 'Username: ' . $username . '<br><br>';
}
?>
로그인 후 복사
bind_result와 get_result 사이의 선택은 애플리케이션의 특정 요구 사항에 따라 달라집니다. bind_result는 이전 PHP 버전과의 호환성을 제공하고 정확한 변수 바인딩을 허용하는 반면, get_result는 유연성을 제공하고 수동 변수 바인딩이 필요하지 않습니다. 그러나 get_result에는 MySQL 네이티브 드라이버가 필요합니다.

위 내용은 MySQLi의 `bind_result`와 `get_result`: 어떤 준비된 명령문 방법을 선택해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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