php遍历文件夹读取文件夹中图片并分页显示图片
封面图
•
2025-11-01
•
PHP
180
0
0
0
在 PHP 中遍历文件夹、读取图片并实现分页显示,可以通过以下步骤实现: --- ## ✅ 功能说明 1. 遍历指定目录下的所有图片(如 `.jpg`, `.png`, `.gif` 等)。 2. 将图片列表按每页 10 张进行分页显示。 3. 使用 `$_GET['page']` 获取当前页码。 --- ## 🧩 示例代码 ```php <?php // 设置要扫描的图片目录 $dir = 'images'; // 假设图片放在 images 文件夹中 // 允许的图片格式 $allowed_exts = ['jpg', 'jpeg', 'png', 'gif']; // 获取当前页码,默认为第一页 $page = isset($_GET['page']) ? (int)$_GET['page'] : 1; $limit = 10; // 每页显示的图片数量 $offset = ($page - 1) * $limit; // 扫描目录中的文件 $files = array(); if ($handle = opendir($dir)) { while (false !== ($file = readdir($handle))) { if ($file != '.' && $file != '..') { $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION)); if (in_array($ext, $allowed_exts)) { $files[] = $file; } } } closedir($handle); } // 计算总页数 $total_files = count($files); $total_pages = ceil($total_files / $limit); // 取出当前页的图片 $current_files = array_slice($files, $offset, $limit); // 显示图片 echo "<h2>图片列表</h2>"; foreach ($current_files as $file) { echo "<img src='{$dir}/{$file}' width='150' style='margin: 10px;' alt='{$file}'>"; } // 分页导航 echo "<div style='margin-top: 20px;'>"; for ($i = 1; $i <= $total_pages; $i++) { $active = ($i == $page) ? "style='font-weight:bold;'" : ""; echo "<a href='?page={$i}' {$active}>{$i}</a> "; } echo "</div>"; ?> ``` --- ## 📁 目录结构示例 假设你的项目结构如下: ``` your_project/ ├── index.php └── images/ ├── image1.jpg ├── image2.png └── image3.gif ``` --- ## 🛠 注意事项 - 确保 `images` 文件夹存在,并且 PHP 有权限访问它。 - 如果图片很多,建议使用更高效的分页方式(如数据库存储),但此方法适用于本地文件系统。 - 图片路径需正确,可以使用绝对路径或相对路径。 - 可以添加更多功能,如排序、过滤等。 --- ## ✅ 可扩展功能 - 支持多语言 - 添加图片缩略图 - 支持上传图片 - 使用 CSS 美化界面 --- 如果你需要将这个功能集成到一个完整的网页中,或者想用 `PDO` 或 `MySQL` 来管理图片,也可以告诉我,我可以帮你进一步扩展。
上一篇:
php mktime
下一篇:
php 删除数组最后一个元素
标题录入,一次不能超过6条
留言
评论