随机图片api接口代码更新
标签搜索

随机图片api接口代码更新

恂云
2025-09-04 / 0 评论 / 74 阅读 / 正在检测是否收录...

前段时间不是发布了一个关于api接口代码的文章吗?其中有一个接口代码是调用本地图片文件的,但是我发现那个代码无法使用json回调,现在更新一下代码。
上面截图这个就是上次发布的本地调用代码。

它只能直接回调图片,无论你填写什么格式都是直接返回图片的,无法使用json回调图片地址。

发现的有点晚了,因为我也没用到需要回调图片链接的地方,最近写小程序调用api的时候才发现有问题。 表情

下面更新一下接口代码,完美实现接口返回图片和返回图片链接的两个调用方式。

<?php

// 存放图片的文件夹名
$folder = "ecy";
if(!is_dir($folder)){
die('文件夹不存在');
}

// 从文件夹读取图片
$pics = [];
$dirHandle = opendir($folder);
if (!$dirHandle) {
    die('无法访问图片文件夹,请检查权限');
}
$supportFormats = ['jpg', 'jpeg', 'png', 'gif', 'webp'];
while(($file = readdir($dirHandle)) !== false){
    if ($file == '.' || $file == '..') {
        continue;
    }
    $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION));
    if (in_array($ext, $supportFormats)) {
        $pics[] = rtrim($folder, '/') . '/' . $file; // 相对路径
    }
}
closedir($dirHandle);

if(empty($pics)){
die('文件夹中无有效图片');
}

// 协议直接固定为https://,不自动识别
$randomRelativePath = $pics[array_rand($pics)];
$protocol = 'https'; // 强制使用HTTPS协议,不用HTTPS可以自行修改
$domain = $_SERVER['HTTP_HOST']; // 仍自动识别你的域名/IP
$pic = "{$protocol}://{$domain}/{$randomRelativePath}"; // 拼接HTTPS完整链接

// 返回图片格式
$type=$_GET['type'];
switch($type){

case 'json':
header('Content-type:text/json');
die(json_encode(['image'=>$pic])); // pic是返回的图片链接,如 https://你的域名/ecy/xyttkx.png

default:
die(header("Location: $pic"));
}

代码给你们带上了注解,ecy那里就是文件夹名字,名字可以自行更改,需要调用的图片放在哪个文件夹里面就用哪个文件夹的图名字。

调用image格式是直接返回图片。

调用json格式会自动识别你的域名和图片路径以及名字,从而拼接成完整的图片返回。

注意,我代码里写的是强制使用HTTPS,如果你的域名没有ssl,你可以自己修改一下代码。

用我的接口给你们测试一下新代码 表情

这是api调用本地图片的代码更新,调用txt文件图片链接的那个api接口代码没问题,自适应接口代码也可以正常使用,我就不发第二次了,感兴趣的也可以去看看: 点击打开文章

4

评论 (0)

取消