在 PHP 中使用循环从数据库中加载数据240



在 PHP 应用程式中,经常需要从数据库中检索数据并显示在页面上。为了实现这一点,可以使用各种循环来遍历结果集并动态创建 HTML 元素。

使用 MySQLi

MySQLi 是与 MySQL 数据库交互的 PHP 扩展。它提供了一个名为 mysqli_query() 的方法来执行 SQL 查询并获取结果集。要使用 MySQLi 执行循环,可以按照以下步骤操作:
建立一个连接到数据库的 MySQLi 对象
执行 SQL 查询并存储结果集中
使用 while() 或 foreach() 循环遍历结果集
在每次迭代中,获取和显示数据


// 1. 建立连接
$mysqli = new mysqli('localhost', 'username', 'password', 'database_name');
// 2. 执行查询
$result = $mysqli->query("SELECT * FROM table_name");
// 3. 遍历结果集
while ($row = $result->fetch_assoc()) {
// 4. 显示数据
echo "<p>" . $row['column_name'] . "</p>";
}

使用 PDO

PDO (PHP 数据对象) 是一个用于与不同数据库进行交互的 PHP 扩展。它还提供了用于执行查询和遍历结果集的方法。要使用 PDO 执行循环,可以按照以下步骤操作:
建立一个连接到数据库的 PDO 对象
执行 SQL 查询并存储结果集中
使用 while() 或 foreach() 循环遍历结果集
在每次迭代中,获取和显示数据


// 1. 建立连接
$pdo = new PDO('mysql:host=localhost;dbname=database_name', 'username', 'password');
// 2. 执行查询
$statement = $pdo->prepare("SELECT * FROM table_name");
$statement->execute();
// 3. 遍历结果集
while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
// 4. 显示数据
echo "<p>" . $row['column_name'] . "</p>";
}

使用 mysqli_fetch_all() 函数

mysqli_fetch_all() 函数允许您一次性检索结果集中的所有行。这对于大量数据集特别有用,因为它可以减少服务器请求的次数。要使用此函数,可以按照以下步骤操作:
建立一个连接到数据库的 MySQLi 对象
执行 SQL 查询并存储结果集中
使用 mysqli_fetch_all() 函数检索所有行
使用 foreach() 循环遍历行数组


// 1. 建立连接
$mysqli = new mysqli('localhost', 'username', 'password', 'database_name');
// 2. 执行查询
$result = $mysqli->query("SELECT * FROM table_name");
// 3. 检索所有行
$rows = $result->fetch_all(MYSQLI_ASSOC);
// 4. 遍历行数组
foreach ($rows as $row) {
echo "<p>" . $row['column_name'] . "</p>";
}

优化循环

为了提高循环的效率,可以采取一些优化措施。这些措施包括:
使用索引:确保查询中使用的字段已建立索引。
限制结果集:使用 LIMIT 子句限制从数据库检索的行数。
缓存结果:使用 mysqli_store_result() 函数将结果集存储在服务器端,以便快速访问。
关闭连接:在不再需要结果集后立即关闭连接。


在 PHP 中使用循环从数据库中加载数据是一个常见的任务。通过使用 MySQLi、PDO 或 mysqli_fetch_all() 函数以及遵循一些优化技术,您可以创建高效且可伸缩的应用程式。

2024-11-23


上一篇:PHP 数组处理函数:全面指南

下一篇:PHP 数据库写入失败:深入剖析及其解决方案