LoadinG

PHP随机图片API接口源代码

本文阅读 1 分钟
首页 程序代码 正文

图片外链版 PHP代码

<?php
$txt = "储存图片链接的txt外链"; // 读取远程txt;
// 是否存在
if (file_get_contents($txt)) {
    $data = file($txt); // 将文件存放在一个数组中;
    $num = count($data); // 条数;
    $id = mt_rand(0, $num - 1); // 随机数字;
    $url = chop($data[$id]); // 显示第几行数据,并去除空格;
    header("location:$url");
}
?>

图片本地版 PHP代码

<?php
header('Cache-Control:no-cache,must-revalidate');
header('Pragma:no-cache');
header("Expires:0");
header("Access-Control-Allow-Origin:*");
// 处理请求输出数据
// 这将得到一个文件夹中的所有gif,jpg和png图片的数组
$rand = rand(0, 1);
if ($rand) {
    $localurl = "images/*.{gif,jpg,png}";
} else {
    $localurl = "images/*.{gif,jpg,png}";
}
$img_array = glob($localurl, GLOB_BRACE);
// 从数组中选择一个随机图片 
$img = array_rand($img_array);
$imgurl = $img_array[$img];
$https = isset($_GET["https"]) ? $_GET["https"] : 1;
if ($https == "true") {
    $imgurl = 'https://' . $_SERVER['SERVER_NAME'] . '/api/' . $imgurl;
} else {
    $imgurl = 'http://' . $_SERVER['SERVER_NAME'] . '/api/' . $imgurl;
}
if (isset($_GET["type"]) ? $_GET["type"] : 1 == "json") {
    $rTotal = '0';
    $gTotal = '0';
    $bTotal = '0';
    $total = '0';
    $imageInfo = getimagesize($img_array[$img]);
    // 图片类型
    $imgType = strtolower(substr(image_type_to_extension($imageInfo[2]), 1));
    // 对应函数
    $imageFun = 'imagecreatefrom' . ($imgType == 'jpg' ? 'jpeg' : $imgType);
    $i = $imageFun($img_array[$img]);
    // 测试图片,自己定义一个,注意路径
    for (
        $x = 0;
        $x < imagesx($i);
        $x++
    ) {
        for (
            $y = 0;
            $y < imagesy($i);
            $y++
        ) {
            $rgb = imagecolorat($i, $x, $y);
            $r = ($rgb >> 16) & 0xFF;
            $g = ($rgb >> 8) & 0xFF;
            $b = $rgb & 0xFF;
            $rTotal += $r;
            $gTotal += $g;
            $bTotal += $b;
            $total++;
        }
    }
    $rAverage = round($rTotal / $total);
    $gAverage = round($gTotal / $total);
    $bAverage = round($bTotal / $total);
    $arr = array('ImgUrl' => $imgurl, 'Color' => "$rAverage,$gAverage,$bAverage");
    echo json_encode($arr);
    exit();
}
// 在页面显示图片地址
// echo $imgurl;
header("location:$imgurl");
?>

这一种API所获得的随机图片全部存放在服务器目录下,随机图片响应速度与服务器性能有直接关系。

新建index.php文件,将下方代码复制进去,创建一个images文件夹,将图片放入即可。

文章采用:署名-非商业性使用-相同方式知识共享 署名 4.0 协议国际版 (CC BY-NC-SA 4.0) 许可协议授权。
免责声明:本页面资源来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系客服并出示版权证明以便删除。
分享
Photoshop白色图片偏黄?快速解决方法大揭秘!
« 上一篇 12-05
基于PHP指定IP地址访问权限控制脚本
下一篇 » 12-06

发表评论 Comment

您必须 后才能发表评论哦~
昵称
请输入您的昵称
邮箱
输入QQ邮箱可获取头像
网址
可通过昵称访问您网站
快捷回复: 验证码:
让大家也知道你的独特见解
已有 0 条评论

动态快讯

热门文章

QQ客服:3236485 QQ群号:530123520

在线时间:09:00-18:00

扫描二维码

联系官方客服微信号

扫描二维码

关注官方微信公众号

{"error":400,"message":"over quota"}