随机图片API接口源码
前言
- 本站因背景图或者缩略图等需求需要用到随机图片的API接口。
- 但是用别人的接口,会担心某天接口GG了。
- 所以自己根据网上的教程之类的写了一个PHP的随机图片API接口。
源码教程
里面有很多注释标明的很清楚了,参数type的作用是返回的类型(可空,默认返回down),如show,down,json
- show:直接返回一张图片
- down:直链下载方式
- json:返回json格式的文本
首先新建一个dongman.txt
的文本,将图片的URL地址放进去,然后新建一个random.php
的文件,最后将下方代码填写进去。
开源代码
<?php
//存有美图链接的文件名img.txt
$filename = "dongman.txt";
if(!file_exists($filename)){
die('文件不存在');
}
//从文本获取链接
$pics = [];
$fs = fopen($filename, "r");
while(!feof($fs)){
$line=trim(fgets($fs));
if($line!=''){
array_push($pics, $line);
}
}
//从数组随机获取链接
$pic = $pics[array_rand($pics)];
//返回指定格式
$type=$_GET['type'];
//设置缓存控制
header('Cache-Control: no-cache, no-store, must-revalidate');
header('Pragma: no-cache');
header('Expires: 0');
//JSON返回
if (isset($_GET['type']) && $_GET['type'] === 'json') {
$response = array(
'code' => 200,
'img' => $pic
);
header('Content-Type: application/json');
echo json_encode($response);
}elseif (isset($_GET['type']) && $_GET['type'] === 'show') {
echo '<img src="' . $pic . '" />';
}elseif (isset($_GET['type']) && $_GET['type'] === 'down') {
header("location:$pic");
}else {
header("location:$pic");
}
?>
THE END