当前位置: 首页> 函数类别大全> mysqli_stmt::bind_param

mysqli_stmt::bind_param

(mysqli_stmt_bind_param)将变量作为参数绑定到预准备语句
名称:mysqli_stmt::bind_param
分类:MySQLi
所属语言:php
一句话介绍:(mysqli_stmt_bind_param)将变量作为参数绑定到预准备语句

mysqli_stmt::bind_param

适用PHP版本

PHP 5.3.0 及以上版本

函数说明

mysqli_stmt::bind_param 方法用于将变量绑定到预处理语句(prepared statement)中的参数标记(placeholder)。这允许安全地将用户输入数据传递给SQL语句,防止SQL注入攻击。

函数语法

bool mysqli_stmt::bind_param(string $types, mixed &...$vars)

或使用面向过程方式:

bool mysqli_stmt_bind_param(mysqli_stmt $stmt, string $types, mixed &...$vars)

参数

  • $types:一个字符串,用来定义传入变量的类型。每个字符代表一个变量类型:
    • i — 整型(integer)
    • d — 浮点型(double)
    • s — 字符串(string)
    • b — 二进制(blob)
  • $vars:要绑定的变量,按顺序对应预处理语句中的参数标记。变量必须以引用方式传递。

返回值

成功时返回 true,失败时返回 false

示例

下面的示例展示如何使用 bind_param 方法绑定参数并执行预处理语句:

    <?php
    $mysqli = new mysqli("localhost", "user", "password", "database");

    $stmt = $mysqli->prepare("INSERT INTO users (name, age, score) VALUES (?, ?, ?)");

    $name = "Alice";
    $age = 25;
    $score = 88.5;

    // 绑定参数:字符串(s),整数(i),浮点数(d)
    $stmt->bind_param("sid", $name, $age, $score);

    $stmt->execute();

    echo "插入成功,受影响的行数: " . $stmt->affected_rows;

    $stmt->close();
    $mysqli->close();
    ?>
  

示例代码说明

代码中首先创建一个mysqli对象连接数据库,随后通过 prepare 创建一个预处理语句,语句中包含三个占位符 ?。然后用 bind_param 将变量绑定到占位符,"sid" 表明第一个参数是字符串,第二个是整数,第三个是浮点数。调用 execute 执行语句后,插入数据到数据库。最后关闭语句和连接。

同类函数
热门文章