English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
mysqli_stmt_attr_get() 함수는 문의 속성의 현재 값을 가져옵니다
mysqli_prepare() 함수를 사용하여 파라미터 표시기("?")를 가진 준비된 문의를 생성할 수 있습니다. 준비된 문의를 생성한 후, mysqli_stmt_bind_param() 함수를 사용하여 값을 준비된 문의의 파라미터에 바인딩해야 합니다.
mysqli_stmt_attr_set() 함수를 사용하여 문의의 다양한 속성을 설정할 수 있으며, 이를 통해 문의의 동작을 변경할 수 있습니다.
mysqli_stmt_attr_get() 함수는 하나의 문의 객체와 속성을 받아 그 속성의 현재 값을 반환합니다.
mysqli_stmt_attr_get($stmt, $attr);
순번 | 파라미터 및 설명 |
---|---|
1 | stmt(필수) 이는 준비된 문의 객체를 나타냅니다. |
2 | attr(필수) 이는 설정하려는 주어진 문의 속성을 나타내는 정수 값입니다. 속성은 다음 중 하나입니다:
|
PHP mysqli_stmt_attr_get() 함수는 지정된 속성의 값을 성공적으로 반환하며, 주어진 속성을 찾지 못하면false.
이 함수는 PHP 버전5중에서 도입되었으며 모든 더 높은 버전에서 사용할 수 있습니다.
다음 예제에서 설명됩니다mysqli_stmt_attr_set()함수의 사용법(상대적 과정 스타일)-
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); $query = "CREATE TABLE Test(Name VARCHAR(255), AGE INT); mysqli_query($con, $query); print("테이블 생성.....\n"); //insert into Test values('Raju', 25); $stmt = mysqli_prepare($con, "INSERT INTO Test values(?, ?)"); mysqli_stmt_bind_param($stmt, "si", $Name, $Age); $Name = 'Raju'; $Age = 25; print("데이터 입력.....\n"); $res = mysqli_stmt_attr_set($stmt, MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH, TRUE); if($res){ print("성공.....\n"); }else{ print("실패.....\n"); } $val = mysqli_stmt_attr_get($stmt, MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH); print("값: ".$val); //문장 실행 mysqli_stmt_execute($stmt); //문장 종료 mysqli_stmt_close($stmt); //연결 종료 mysqli_close($con); ?>
결과 출력
테이블 생성..... 데이터 입력..... 성공..... 값: 1
객체 지향 스타일에서 이 함수의 문법은 다음과 같습니다$stmt->close();。다음은 이 함수의 객체 지향 스타일 예제입니다;
<?php //연결 생성 $con = new mysqli("localhost", "root", "password", "mydb"); $query = "CREATE TABLE Test(Name VARCHAR(255), AGE INT); $con -> query($query); print("테이블 생성.....\n"); //insert into Test values('Raju', 25);//,('Rahman', 30),('Sarmista', 27); $stmt = $con -> prepare("INSERT INTO Test values(?, ?"); $stmt -> bind_param("si", $Name, $Age); $Name = 'Raju'; $Age = 25; print("데이터 입력.....\n"); //속성 설정 $res = $stmt->attr_set(MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH, TRUE); if($res){ print("성공.....\n"); }else{ print("실패.....\n"); } $val = $stmt->attr_get(MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH); print("값: ".$val); //문장 실행 $stmt->execute(); //문장 종료 $stmt->close(); //연결 종료 $con->close(); ?>
결과 출력
테이블 생성..... 데이터 입력..... 성공..... 값: 1