PHP实现随机图像API接口功能

PHP实现随机图像API接口功能

小吴 321 2022-09-04

方法1

PHP 随机图像,仅需四行代码
新建一个TXT记事本,修改后缀为.php,输入以下代码:

<?php
$img_array = glob('images/*.{gif,jpg,png,jpeg,webp,bmp}', GLOB_BRACE);
if(count($img_array) == 0) die('没找到图片文件。请先上传一些图片到 '.dirname(__FILE__).'/images/ 文件夹');
header('Content-Type: image/png');
echo(file_get_contents($img_array[array_rand($img_array)]));
?>

以上的代码会查找同一文件夹内images目录下的所有图片,并随机挑选出一张显示出来。

所以在php文件目录下要新建一个 images目录存放照片。

原文地址:https://mkblog.cn/1836/

方法2

创建一个img.txt和一个random.php
我们在img.txt中填写图片的url,每行一张,效果如图所示
9300c1f73c1010cc45753f8127a88e22

然后我们在random.php中写下这段代码

<?php
//存有image链接的文件名img.txt
$filename = "img.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'];
switch($type){
 
//JSON返回
case 'json':
    header('Content-type:text/json');
    die(json_encode(['pic'=>$pic]));
 
default:
    die(header("Location: $pic"));
}
?>

区别:相较于方法1,此方法可以直接显示图片url地址
原文地址:https://blog.51cto.com/u_15127606/3521431

群辉环境下运行

群辉web station套件

光做好代码,是没法运行php文件的,还需要用网站的形式搭建,百度推荐使用宝塔面板,这里我用群辉自带的web station套件。

微信截图_20220904171054
配套插件必装
微信截图_20220904171144
启用个人网站,会自动生成一个web共享文件夹
微信截图_20220904171226
新建站点,文档根目录放你编辑好的php文件images文件夹

此时你访问http://群辉IP:5803/xxx.php即可。