mysqli_stmt::attr_set
(mysqli_stmt_attr_set) 준비된 진술의 동작을 수정하는 데 사용됩니다.
함수 이름 : mysqli_stmt :: attr_set ()
해당 버전 : PHP 8.0.0 이상
사용법 :이 방법은 전처리 된 명령문 객체의 속성을 설정하는 데 사용됩니다.
구문 : bool mysqli_stmt :: attr_set (int $ attr, mixed $ mode)
매개 변수 :
반환 값 : 성공시 사실, 실패에 대한 거짓.
예:
// 创建数据库连接$mysqli = new mysqli("localhost", "username", "password", "database"); // 准备预处理语句$stmt = $mysqli->prepare("SELECT id, name FROM my_table WHERE age > ?"); // 设置预处理语句的游标类型为可滚动游标$stmt->attr_set(MYSQLI_STMT_ATTR_CURSOR_TYPE, MYSQLI_CURSOR_TYPE_SCROLLABLE); // 设置预处理语句的预取行数为100 $stmt->attr_set(MYSQLI_STMT_ATTR_PREFETCH_ROWS, 100); // 绑定参数并执行查询$age = 18; $stmt->bind_param("i", $age); $stmt->execute(); // 获取结果集$result = $stmt->get_result(); // 遍历结果集并输出数据while ($row = $result->fetch_assoc()) { echo "ID: " . $row['id'] . ", Name: " . $row['name'] . "<br>"; } // 关闭预处理语句和数据库连接$stmt->close(); $mysqli->close();
위의 예에서는 먼저 데이터베이스 연결 객체 $ mysqli를 생성하고 개체를 사용하여 전처리 문을 준비합니다. $ stmt. 그런 다음 MySQLI_STMT :: ATTR_SET () 메소드를 사용하여 전처리 문의 커서 유형을 스크롤 가능한 커서로 설정하고 프리 페치 된 행의 수를 각각 100으로 설정합니다. 다음으로 매개 변수를 바인딩하고 쿼리를 실행 한 다음 결과 세트를 가져 와서 트래버스하여 쿼리 결과를 출력합니다. 마지막으로 전처리 문과 데이터베이스 연결을 닫았습니다.
mysqli_stmt :: att_set () 메소드를 사용하기 전에 전처리 명령문 객체를 준비해야합니다.