自动判断电脑或手机随机图片API接口PHP代码

这个和平时的随机图片接口不一样,会判断当前访问者是电脑端还是移动端从而输出不同大小的图片,网站目录内需要创建两个文件夹,desktop存放电脑图片,mobile存放手机图片。

对图片做了一定的限制,仅支持jpg,jpeg,png,gif其他格式的图片无法识别。

PHP代码

<?php

$desktopFolder = 'desktop';
$mobileFolder = 'mobile';

function isMobileDevice() {
    $user_agent = $_SERVER['HTTP_USER_AGENT'];
    $mobile_agents = array(
        'android', 'iphone', 'ipad', 'ipod', 'blackberry', 'windows ce', 'opera mini',
        'webos', 'symbian', 'windows phone', 'iemobile', 'mobile', 'palm', 'palmos',
        'pocket', 'psp', 'series', 'playstation', 'nintendo', 'gameboy', 'macintosh'
    );
    foreach ($mobile_agents as $agent) {
        if (stripos($user_agent, $agent) !== false) {
            return true;
        }
    }
    return false;
}
$imageFolder = isMobileDevice() ? $mobileFolder : $desktopFolder;
$imageFiles = glob($imageFolder . '/*.{jpg,jpeg,png,gif}', GLOB_BRACE);
if (count($imageFiles) > 0) {
    $randomImage = $imageFiles[array_rand($imageFiles)];
    $imageInfo = getimagesize($randomImage);
    $mime = $imageInfo['mime'];
    header('Content-Type: ' . $mime);
    readfile($randomImage);
} else {
    http_response_code(404);
    echo 'No images found.';
}
?>
© 版权声明
THE END
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容