引言

准备工作

在开始之前,请确保您已经:

  1. 安装并配置了PHP环境。
  2. 创建了一个包含图片数据的数据库表。
  3. 熟悉基本的PHP和MySQL语法。

数据库表结构

CREATE TABLE images (
    id INT AUTO_INCREMENT PRIMARY KEY,
    filename VARCHAR(255) NOT NULL,
    content LONGBLOB NOT NULL
);

PHP读取图片

<?php
// 连接数据库
$mysqli = new mysqli('localhost', 'username', 'password', 'database');

// 检查连接是否成功
if ($mysqli->connect_error) {
    die('连接失败: ' . $mysqli->connect_error);
}

// 查询图片数据
$query = "SELECT filename, content FROM images WHERE id = 1";
$result = $mysqli->query($query);

// 检查查询结果
if ($result->num_rows > 0) {
    // 输出图片
    $row = $result->fetch_assoc();
    header('Content-Type: image/jpeg'); // 根据图片类型设置内容类型
    echo $row['content'];
} else {
    echo "未找到图片";
}

// 关闭数据库连接
$mysqli->close();
?>

优化性能

  1. 使用索引:在数据库表中的id字段上创建索引,可以加快查询速度。
  2. 分页查询:如果图片数量较多,可以使用分页查询来减少一次性加载的数据量。
  3. 缓存:将图片数据缓存到内存或文件中,可以避免重复读取数据库。

总结