技术文摘
PHP 如何获取 MySQL 数据库记录数据
2025-01-14 23:30:54 小编
PHP 如何获取 MySQL 数据库记录数据
在 Web 开发中,PHP 与 MySQL 数据库的搭配十分常见。获取 MySQL 数据库中的记录数据是一项基础且关键的操作,下面就详细介绍相关方法。
要使用 PHP 获取 MySQL 数据,需要建立数据库连接。利用 mysqli 或 PDO 扩展都能实现。以 mysqli 为例,代码如下:
<?php
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database_name";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: ". $conn->connect_error);
}
?>
连接成功后,便可以编写 SQL 查询语句来获取数据。例如,从名为 users 的表中获取所有记录:
SELECT * FROM users;
在 PHP 中执行该查询,可使用 query() 方法:
$result = $conn->query("SELECT * FROM users");
若查询成功,$result 将是一个包含结果集的对象。接下来,要从结果集中获取数据,有多种方式。使用 fetch_assoc() 方法可以按关联数组形式获取记录,示例代码如下:
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "ID: ". $row["id"]. " - 姓名: ". $row["name"]. "<br>";
}
} else {
echo "没有找到记录";
}
fetch_assoc() 会将每行数据作为关联数组返回,数组的键是表中的列名。
还可以使用 fetch_row() 按索引数组获取记录,不过此时需要通过数字索引来访问数据。示例如下:
if ($result->num_rows > 0) {
while ($row = $result->fetch_row()) {
echo "ID: ". $row[0]. " - 姓名: ". $row[1]. "<br>";
}
} else {
echo "没有找到记录";
}
另外,PDO 扩展也是不错的选择,它提供了更统一的 API 来操作不同数据库。使用 PDO 获取 MySQL 数据,首先要创建 PDO 实例:
try {
$pdo = new PDO("mysql:host=localhost;dbname=your_database_name", "your_username", "your_password");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo "连接失败: ". $e->getMessage();
}
然后执行查询并获取结果:
$stmt = $pdo->query("SELECT * FROM users");
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($result as $row) {
echo "ID: ". $row["id"]. " - 姓名: ". $row["name"]. "<br>";
}
掌握这些方法,就能在 PHP 项目中轻松获取 MySQL 数据库中的记录数据,为开发强大的 Web 应用奠定坚实基础。
- Andrew NG 深度学习之二元分类与 Logistic 回归笔记
- TCP/IP 协议的从零构建
- 深入解析 Java 的深拷贝与浅拷贝
- Cocos Creator v1.6 正式版已发布
- PHP 中依赖注入的实现方法
- Java 王国的内部纷争
- 你的神经网络为何不工作?这 37 个原因里必有其一!
- CMQ 消息队列的七大功能实践案例
- SpringBoot 定时任务与 Cron 表达式全解析
- 仅用 CSS 实现精美加载的方法
- Keras 与 OpenAI 强化学习的行为 - 评判模型实践
- 新型半参数变分自动编码器 DeepCoder :实现人脸动作的分层级编码
- 模型瘦身:移动/嵌入式端的深度学习探讨
- 2017 华为开发者大赛决赛全程直播:在一起,梦飞扬
- Apache 开源的激进宣言:踢掉 FB 与 PL ?