简介

从指定的目录中获取所有图片文件,然后随机选择一张图片,并通过重定向跳转到该图片的链接。

使用方法

将该代码保存为一个 PHP 文件,在目录下新建个名为tupian的文件夹里面上传图片,

当用户访问该 PHP 页面时,就会随机跳转到一个图片链接。

PHP代码

<?php
//图片目录
$dir = "tupian/";
//允许的图片文件后缀
$allowedExtensions = array("webp", "jpg", "png", "gif");
//开启会话
session_start();
//获取已经显示过的图片列表
$shownImages = isset($_SESSION['shown_images']) ? $_SESSION['shown_images'] : array();
//获取目录下符合要求的所有图片
$imageFiles = array();
foreach ($allowedExtensions as $extension) {
    $imageFiles = array_merge($imageFiles, glob($dir . "*." . $extension));
}
//从图片列表中过滤掉已经显示过的图片
$availableImages = array_diff($imageFiles, $shownImages);
//如果所有图片都已经显示过,则重置已经显示的图片列表
if (empty($availableImages)) {
    $availableImages = $imageFiles;
    $shownImages = array();
}
//随机选择一张图片
$randomImage = $availableImages[array_rand($availableImages)];
//将已经显示的图片添加到列表中
$shownImages[] = $randomImage;
//更新会话中的已经显示的图片列表
$_SESSION['shown_images'] = $shownImages;
//重定向到随机选择的图片链接
header("Location: " . $randomImage);
exit;
?>