随机图片API搭建总结教程

第一种方法(以图片源文件进行随机)

第一步:新建一个文件夹,命名为:img(这个文件里放你需要的图片)
第二步:新建一个index.php文件,写入以下代码 (这个文件就是api地址)

<?php
$img_array = glob("img/*.{webp,gif,jpg,png}",GLOB_BRACE); 
$img = array_rand($img_array); 
$dz = $img_array[$img]; header("Location:".$dz);
?>

第二种方法(以图片链接进行随机)

第一步:创建一个img.txt文件 (这个文件里放你的储存的图片链接,一行一条)
第二步:新建一个index.php文件,写入以下代码 (这个文件就是api地址)

<?php

//存有链接的文件名,这里是存放图片链接的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")); }

随机图片API搭建教程

1.本地文件夹调用。

2.外链调用(推荐)。

1.本地文件夹调用

第一步:在网站根目录下创建一个文件夹,一个PHP文件:img,index.php。

第二步:将以下内容写入index.php中。有两个地方可供修改。

<?php $img_array = glob("img/*.{gif,jpg,png}",GLOB_BRACE); $img = array_rand($img_array); $dz = $img_array[$img];
header("Location:".$dz); ?> 

第三步:将喜欢的图片放入img文件夹中,访问绑定的域名即可随机展示。

2.外链调用(推荐)

第一步:在网站根目录下创建一个txt,一个PHP文件:img.txt,index.php。

第二步:将以下内容写入index.php中。有一个地方可供修改,

<?php $img=file('img.txt'); $url=array_rand($img);

header("Location:".$img[$url]); ?> 

第三步:将喜欢的图片上传到图床后复制链接到img.txt中,访问绑定的域名即可随机展示。

设备自适应输出

第一步:在网站根目录准备好不同设备要用的txt图片链接存储文本

第二步将以下内容写入index.php中,已注释可供修改

<?php // 判断当前设备是否为移动设备的函数 function is_mobile() { $user_agent = $_SERVER['HTTP_USER_AGENT']; // 获取用户代理字符串 $mobile_agents = array('Android', 'iPhone', 'Windows Phone', 'BlackBerry', 'SymbianOS'); // 定义移动设备关键词数组 // 遍历移动设备关键词数组,检查用户代理字符串中是否包含这些关键词 foreach ($mobile_agents as $mobile_agent) { if (stripos($user_agent, $mobile_agent) !== false) { return true; // 如果找到关键词,返回true表示是移动设备 }
    } return false; // 如果没有找到关键词,返回false表示不是移动设备 } // 从指定的txt文件中随机获取一条图片链接的函数 function get_random_image($filename) { $image_urls = file($filename, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); // 读取txt文件的每一行,存储到一个数组中 if (count($image_urls) > 0) { $random_index = array_rand($image_urls); // 从数组中随机选择一个索引 return $image_urls[$random_index]; // 返回选中的图片链接 } else { return false; // 如果数组为空,返回false表示没有图片链接 }
} // 直接输出图片的函数 function output_image($image_url) { $headers = get_headers($image_url, 1); // 获取图片链接的HTTP头信息 if (isset($headers['Content-Type'])) {
        header('Content-Type: ' . $headers['Content-Type']); // 设置响应的Content-Type头部信息 } echo file_get_contents($image_url); // 读取并输出图片内容 } $is_mobile = is_mobile(); // 判断当前设备是否为移动设备 $filename = $is_mobile ? 'mpm.txt' : 'moe.txt'; // 根据设备类型选择相应的txt文件 $image_url = get_random_image($filename); // 从txt文件中随机获取一条图片链接 if ($image_url) {
    output_image($image_url); // 输出图片 } else { echo "No images found in the txt file."; // 如果没有图片链接,输出错误信息 } ?> 
发表评论 / Comment

用心评论~