PHP를 사용하여 데이터베이스, 특히 데이터를 내보내는 스크립트에서 작업 할 때는 데이터베이스 연결의 관련 특성을 이해하고 얻는 것이 중요합니다. mysqli_stmt :: attr_get은 특정 명령문 또는 연결 관련 속성을 얻기 위해 전처리 명세서 개체에 대한 MySQLI 확장에 제공된 메소드입니다. 이 기사에서는 데이터베이스 데이터를보다 효율적이고 안전하게 처리하는 데 도움이되는 MySQLI_STMT :: ATTR_GET 기능과 함께 데이터 내보내기 스크립트에서 데이터베이스 연결 속성을 얻는 방법을 자세히 설명합니다.
mysqli_stmt :: attr_get은 mysqli_stmt 클래스의 메소드이며,이 전처리 문과 관련된 속성을 얻는 데 주로 사용됩니다. 이 방법의 정의는 다음과 같습니다.
public mysqli_stmt::attr_get(int $attr): mixed
매개 변수 $ attr는 얻으려는 속성 유형을 나타내는 정수입니다.
반환 값은 해당 속성의 값입니다.
일반적인 속성은 다음과 같습니다.
mysqli_stmt_attr_update_max_length (value 0) : 최대 길이를 업데이트하는 속성을 가져옵니다.
그러나 attr_get 메소드는 모든 유형의 속성 획득을 지원하지 않으며 연결 수준 속성에 대한 실제 지원은 제한적입니다.
데이터 내보내기 스크립트에는 일반적으로 많은 양의 데이터 판독 및 전송이 포함됩니다. 연결의 안정성을 보장하고 필요한 연결 정보를 얻는 것이 스크립트 최적화의 핵심입니다. Att_get을 사용하면 도움이 될 수 있습니다.
현재 명령문에 대한 구성 정보를 가져옵니다.
명세서 실행의 관련 상태를 결정하여 디버깅에 도움이됩니다.
데이터 내보내기의 매개 변수를 적시에 조정하십시오.
또한 경우에 따라 연결된 문자 세트, 클라이언트 정보 등을 얻기 위해 결합하여 데이터의 무결성과 정확성을 보장 할 수 있습니다.
다음은 MySQLI_STMT :: ATT_GET 메소드를 사용하여 데이터 내보내기 스크립트에서 관련 속성을 얻는 방법을 보여주는 간단한 예입니다.
<?php
// 데이터베이스에 연결하십시오,도메인 이름을 대체하십시오 m66.net
$mysqli = new mysqli("db.m66.net", "username", "password", "database");
// 연결이 성공했는지 확인하십시오
if ($mysqli->connect_errno) {
die("연결이 실패했습니다: " . $mysqli->connect_error);
}
// 쿼리 문을 준비하십시오
$stmt = $mysqli->prepare("SELECT id, name, email FROM users WHERE status = ?");
if (!$stmt) {
die("전처리 진술이 실패했습니다: " . $mysqli->error);
}
// 바인딩 매개 변수
$status = 'active';
$stmt->bind_param("s", $status);
// 실행 진술
$stmt->execute();
// 속성을 얻고 인쇄하십시오 MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH
$maxLength = $stmt->attr_get(MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH);
echo "최대 길이 속성을 업데이트하십시오: " . $maxLength . PHP_EOL;
// 바인딩 결과 변수
$stmt->bind_result($id, $name, $email);
// 내보내기 데이터(예)
while ($stmt->fetch()) {
echo "ID: $id, Name: $name, Email: $email" . PHP_EOL;
}
// 진술과 연결을 닫습니다
$stmt->close();
$mysqli->close();
?>
제한된 속성이 지원됩니다
mysqli_stmt :: attr_get은 모든 속성을 지원하지 않습니다. 일반적으로 사용되는 것은 mysqli_stmt_attr_update_max_length 입니다. 더 많은 연결 수준 속성을 얻어야하는 경우 $ mysqli-> get_charset () 과 같은 다른 mysqli 함수를 사용하여 문자 세트를 얻는 것이 좋습니다.
오류 처리 <br> 데이터 내보내기 스크립트에서 불완전한 데이터 또는 내보내기 실패를 피하기 위해 충분한 오류 처리를 추가해야합니다.
전처리 진술의 장점 <br> 전처리 명세서를 사용하면 내보내기 스크립트의 성능을 향상시키는 동안 SQL 주입을 더 잘 방지 할 수 있습니다.