📅  最后修改于: 2023-12-03 15:03:07.767000             🧑  作者: Mango
MySQLi是PHP中操作MySQL数据库的扩展,它通过提供新的函数和增强现有函数的参数来取代了老的MySQL扩展。MySQLi扩展提供了更多面向对象和预备语句(prepared statements)的支持。
连接到MySQL数据库使用mysqli_connect()函数,它接受4个参数:
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
$conn = mysqli_connect($servername, $username, $password, $dbname);
$servername
- MySQL 服务器的主机名或IP地址$username
- 用户名$password
- 密码$dbname
- 数据库名查询数据库使用mysqli_query()函数,它接受2个参数:
$sql = "SELECT * FROM myTable";
$result = mysqli_query($conn, $sql);
$conn
- 数据库连接对象$sql
- 要执行的SQL语句处理查询结果使用mysqli_fetch_array()函数返回一个数组,它接受一个参数:
while ($row = mysqli_fetch_array($result)) {
echo $row['column1'] . " " . $row['column2'] . "<br>";
}
$result
- 查询结果对象使用预备语句可以减少SQL注入的风险,它通过将变量绑定到查询中的占位符上来操作数据库。首先需要使用mysqli_prepare()函数来准备一个SQL查询,它返回一个预备语句对象。
$sql = "INSERT INTO myTable (column1, column2) VALUES (?, ?)";
$stmt = mysqli_prepare($conn, $sql);
接着,使用mysqli_stmt_bind_param()函数来将变量绑定到查询中:
mysqli_stmt_bind_param($stmt, "ss", $param1, $param2);
$stmt
- 预备语句对象"ss"
- 参数字符串,指定每个参数的类型。s表示字符串,i表示整数,d表示双精度浮点数。$param1
, $param2
- 要绑定的变量值然后,使用mysqli_stmt_execute()函数来执行预备语句:
mysqli_stmt_execute($stmt);
使用mysqli_close()函数来关闭连接:
mysqli_close($conn);
以上就是MySQLi-PHP语法的基本用法。更多使用细节可以参考官方文档。