技术文摘
PHP mysqli 用法全面解析
PHP mysqli 用法全面解析
在 PHP 开发中,与数据库进行交互是非常关键的一部分,而 mysqli 扩展为开发者提供了强大的工具来处理 MySQL 数据库。本文将全面解析 mysqli 的用法。
连接数据库
使用 mysqli 首先要建立与数据库的连接。通过 mysqli 类的构造函数来实现:
$mysqli = new mysqli("localhost", "username", "password", "database_name");
if ($mysqli->connect_error) {
die("连接失败: ". $mysqli->connect_error);
}
这里传入主机名、用户名、密码和数据库名,连接成功后就可以对数据库进行操作了。
执行查询
执行 SELECT 查询
执行 SELECT 查询可以使用 query 方法。例如:
$result = $mysqli->query("SELECT * FROM users");
if ($result) {
while ($row = $result->fetch_assoc()) {
echo $row['username']. "<br>";
}
$result->free();
}
query 方法返回一个结果集对象,通过 fetch_assoc 方法逐行获取数据,最后使用 free 方法释放结果集占用的内存。
执行 INSERT、UPDATE 和 DELETE 查询
对于 INSERT、UPDATE 和 DELETE 查询,同样使用 query 方法。例如插入数据:
$sql = "INSERT INTO users (username, email) VALUES ('John', 'john@example.com')";
if ($mysqli->query($sql) === TRUE) {
echo "新记录插入成功";
} else {
echo "错误: ". $sql. "<br>". $mysqli->error;
}
成功执行后会返回 TRUE,否则可以通过 error 属性获取错误信息。
预处理语句
预处理语句能有效防止 SQL 注入攻击。例如插入数据的预处理语句:
$stmt = $mysqli->prepare("INSERT INTO users (username, email) VALUES (?,?)");
$stmt->bind_param("ss", $username, $email);
$username = "Jane";
$email = "jane@example.com";
$stmt->execute();
$stmt->close();
首先使用 prepare 方法准备 SQL 语句,然后通过 bind_param 方法绑定参数,最后执行 execute 方法。
关闭连接
操作完成后,需要关闭与数据库的连接,释放资源:
$mysqli->close();
掌握 PHP mysqli 的这些用法,能让开发者在数据库操作方面更加得心应手,确保应用程序高效、安全地运行。无论是小型项目还是大型系统,合理运用 mysqli 扩展都能提升开发效率和系统性能。
TAGS: 数据库交互 PHP数据库操作 PHP mysqli mysqli用法
- 通过GitLab CI/CD与Terraform实现Lambda用于SFTP集成及Go中的S Databricks
- CrawlSpider中Rule解析过的链接如何进行定制化处理
- Python函数异常处理:自定义函数执行正常调用后却只输出一条消息问题的解决方法
- Python代码中print(list(g))后为何无法再执行print(i)
- 微信支付成功后怎样实现页面跳转
- BARK - Textdio模型全新呈现
- Go语言循环中顶格单词Label的含义
- Go中time.Now().Format("2006.01.02") 为何格式化为2006年1月2日
- Python报错无法解析JSON数据的解决方法
- Go、Mysql、Gin 框架下无效内存地址或空指针引用异常如何排查
- Go语言中函数参数指针值无法成功修改的原因
- Go 中实现类似 PHP 关联数组的方法
- Python抓取的文本和图片怎样保存为Word文档
- Selenium自动化测试里iframe的切换方法
- 在 Go 语言里怎样调用 error 接口的 Error() 方法