美女高清桌面壁纸接口支持URL、JSON、XML、302跳转以及直接显示图片的形式调用。其中URL指的是的直接显示图片链接,302跳转指的是访问API时会跳转到图片文件的链接。
调用例:
调用代码:
<img src="https://cdn.mom1.cn/?mom=302">
接口php源代码:
<?php
//This will get an array of all the gif, jpg and png images in a folder
$img_array = glob("img/*.{gif,jpg,png}",GLOB_BRACE); //img目录下的gif,jpg,png
//Domain Setting
$domain = 'cdn.mom1.cn';//访问域名为cdn.mom1.cn
//Pick a random image from the array
$img = array_rand($img_array);
//XML Return
function array2xml($array, $wrap='ROOT', $upper=true) {
// set initial value for XML string
# $xml = '';
// wrap XML with $wrap TAG
if ($wrap != null) {
$xml = "<$wrap>\n";
}
// main loop
foreach ($array as $key=>$value) {
// set tags in uppercase if needed
if ($upper == true) {
$key = strtoupper($key);
}
// append to XML string
$xml .= "<$key>" . htmlspecialchars(urldecode(trim($value))) . "</$key>";
}
// close wrap TAG if needed
if ($wrap != null) {
$xml .= "\n</$wrap>\n";
}
// return prepared XML string
return $xml;
}
//Result Generate
$result['error']=0;
$result['result']=200;
$result['img']='//'.$domain.'/'.$img_array[$img];
//Type Choose
$type=$_GET['mom'];
switch ($type)
{
//HTML
case 'url':
echo $result['img'];
break;
//JSON
case 'json':
header('Content-type:text/json');
echo json_encode($result, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT);
break;
//XML
case 'xml':
header("Content-type:text/xml");
echo '<?xml version="1.0" encoding="UTF-8"?>';
echo array2xml($result);
break;
//302 Redirect
case '302':
header("Location:".$result['img']);
break;
//IMG
default:
echo '<img alt="'.$result['img'].'" src="'.$result['img'].'" />';
break;
}
?>
<?php
//This will get an array of all the gif, jpg and png images in a folder
$img_array = glob("img/*.{gif,jpg,png}",GLOB_BRACE);
//Domain Setting
$domain = 'img.btu.pp.ua';
//Pick a random image from the array
$img = array_rand($img_array);
//Result Generate
$result['error']=0;
$result['result']=200;
$result['img']='//'.$domain.'/'.$img_array[$img];
//Type Choose
$type=$_GET['type'];
switch ($type)
{
//HTML
case 'url':
echo $result['img'];
break;
//JSON
case 'json':
header('Content-type:text/json');
echo json_encode($result, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT);
break;
//302 Redirect
case '302':
header("Location:".$result['img']);
break;
//IMG
default:
echo '<img alt="'.$result['img'].'" src="'.$result['img'].'" />';
break;
}
2.
简单制作视频/图片API做属于自己的API(本地/外链API) 来源:https://www.ly522.com/797.html
外链版图片API
首先需要外链图片(一行一个链接)缺点就是有时候图片会重复
代码如下:
<?php
$arr=file('images.txt');
$n=count($arr)-1;
for ($i=1;$i<=1;$i++){
$x=rand(0,$n);
header("Location:".$arr[$x],"\n");
}
?>
制作方法
新建一个PHP文件(名字自己取)在创建一个images.txt文档文件,把外链图片放进去
上传服务器空间 然后访问域名/PHP文件名就可以啦
代码放在压缩文件了,下方有下载(我把代码高亮给搞异常了所以就是这样)
本地化图片api
制作方法
新建一个PHP文件(名字自己取)在创建一个img文件夹,把图片放进去
上传服务器空间 然后访问域名/PHP文件名就可以啦
代码放在压缩文件了,下方有下载(我把代码高亮给搞异常了所以就是这样)
代码如下:
<?php
$img_array = glob("img/*.{gif,jpg,png}",GLOB_BRACE);
$img = array_rand($img_array);
$dz = $img_array[$img];
header("Location:".$dz);
?>
本地化视频api
制作方法
新建一个PHP文件(名字自己取)在创建一个video文件夹,把视频放进去
上传服务器空间 然后访问域名/PHP文件名就可以啦
代码放在压缩文件了,下方有下载(我把代码高亮给搞异常了所以就是这样)
代码如下:
<?php
$video_array = glob("video/*.{mp4}",GLOB_BRACE);
$video = array_rand($video_array);
$dz = $video_array[$video];
header("Location:".$dz);
?>
3.
一个图片API遍及各目录代码分享 https://www.ly522.com/1375.html
摘要:之前分享都是只能访问一个文件夹获取图片... 于是啊就有了这一段代码
之前分享都是只能访问一个文件夹获取图片…
于是啊就有了这一段代码
新建了个index.php通过 $_GET 来实现。
index.php代码:
<?php
if($_GET["id"]==1){
$img_array = glob("次元/*.{gif,jpg,png}",GLOB_BRACE);
$img = array_rand($img_array);
echo '<img alt="'.$img_array[$img].'" src="'.$img_array[$img].'" />';
}
if($_GET["id"]==2){
$img_array = glob("美图/*.{gif,jpg,png}",GLOB_BRACE);
$img = array_rand($img_array);
echo '<img alt="'.$img_array[$img].'" src="'.$img_array[$img].'" />';
}
?>
机智如我,然后去新建一个文件夹 分别为 次元 、 美图 这两个。(目录可以英文啦) 也可以自定义手动增加多目录
接下来在这两个文件夹上传图片文件
然后试试访问 域名 /?id=1 或 域名 /?id=2
4.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 目录下的所有图片,并随机挑选出一张显示出来。
随机背景
实现随机背景样式详细代码如下:
<style type="text/css">body { background-image: url("http://www.quanbaike.com/tool/picapi/api/index.php"); background-position: center top; background-size: cover; background-repeat: no-repeat; background-attachment: fixed; } </style>
如果一时找不到好的图片素材,不妨从这下载 368张必应日图&它们的故事打包下载(https://mkblog.cn/1249/)
5.
通过PHP函数实现刷新随机显示不同的图片 Via
因为前两天做了一个评论系统,因为匿名的,所以,不想头像太过单调,就给搞了一个随机头像显示的小东西。大部分人都是想到用js去实现,我呢,JS不算太熟悉,所以就转而用PHP来做了。
每次刷新都会随机刷新一张图片,当然了,图片是提前设定好的目录,只会读取设定目录的图片文件,支持:gif和jpg,如果需要png或者其他格式的图片,也可以自行修改代码。
功能演示,刷新页面即可刷新一张图片
调用代码
<img alt="" src="https://www.shaosiming.net/tu.php" style="width: 345px; height: 200px;" />
PHP代码
$folder='/images/'; 的images是图片文件夹路径设置
<?php
/**
* 功能:随机显示图片
* Filename : img.php
* Usage:
* <img src=img.php>
* <img src=img.php?folder=images2/>
**/
if($_GET['folder']){
$folder=$_GET['folder'];
}else{
$folder='/images/'; //图片的路径文件夹设置
}
$path = $_SERVER['DOCUMENT_ROOT']."/".$folder;
$files=array();
if ($handle=opendir("$path")) {
while(false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
if(substr($file,-3)=='gif' || substr($file,-3)=='jpg') $files[count($files)] = $file;
}
}
}
closedir($handle);
$random=rand(0,count($files)-1);
if(substr($files[$random],-3)=='gif') header("Content-type: image/gif");
elseif(substr($files[$random],-3)=='jpg') header("Content-type: image/jpeg");
readfile("$path/$files[$random]");
?>
7.
random-images
随机图片,此项目实例为二次元随机壁纸,用来做背景图API使用。
https://github.com/zenking/random-images
random-images-master.zip (19.47 KB)
8.搭建自用随机图片API,隐藏真实图片地址
Via:https://tvv.tw/blog/archives/168.html
示例
https://tvv.tw/xjj/meinv/ct.html //该网页用的下面的API。
https://cf.cdn.xiazai.de/api/images //直接访问API无法显示图片。
特性
完全隐藏图片文件的真实地址
支持调用域名白名单
支持多文件夹分类目录
前端调用支持使用随机数载入
部署
https://github.com/galnetwen/Random-Image
本地下载:Random-Image-master.zip (10.21 MB)
- 下载代码,解压至你域名文件夹根目录或者子目录
- 开启 Apache 或者 Nginx 的伪静态功能
- 访问:你的域名/images
- 大功告成
配置
打开 images.php 文件,添加域名白名单与默认文件夹即可。 照葫芦画瓢,不用多说了吧。
<?php
error_reporting(E_ERROR);
require_once 'imgdata.php';
$karnc = new imgdata();
/**
* 遍历获取目录下的指定类型的文件
* @param $path
* @param array $files
* @return array
*/
function getfiles($path, $allowFiles, &$files = array()) {
if (!is_dir($path)) return null;
if (substr($path, strlen($path) - 1) != '/') $path .= '/';
$handle = opendir($path);
while (false !== ($file = readdir($handle))) {
if ($file != '.' && $file != '..') {
$path2 = $path . $file;
if (is_dir($path2)) {
getfiles($path2, $allowFiles, $files);
} else {
if (preg_match("/\.(" . $allowFiles . ")$/i", $file)) {
$files[] = substr($path2, strlen($_SERVER['DOCUMENT_ROOT']));
}
}
}
}
return $files;
}
/**
* 域名白名单校验函数
* @param $domain_list
* @return true/false
*在下面修改为你的网站域名,在下面列表中的网站才能调用API
*/
function checkReferer($domain_list = array(
'haremu.com',
'acg.sx'
)) {
$status = false;
$refer = $_SERVER['HTTP_REFERER']; //前一URL
if ($refer) {
$referhost = parse_url($refer);
/**来源地址主域名**/
$host = strtolower($referhost['host']);
if ($host == $_SERVER['HTTP_HOST'] || in_array($host, $domain_list)) {
$status = true;
}
}
return $status;
}
//列出指定目录下的图片
$CONFIG = array();
$CONFIG['imageManagerAllowFiles'] = array(".png", ".jpg", ".jpeg", ".gif", ".bmp");
$base_Path = '/picture/'; //图片默认主目录
$category = 'a'; //图片默认分类目录
if ($_GET['folder']) {
$folder = trim($_GET['folder']);
$CONFIG['imageManagerListPath'] = $base_Path . $folder . '/'; //有GET访问的分类目录
} else {
$CONFIG['imageManagerListPath'] = $base_Path . $category . '/'; //无GET访问的默认目录
}
$allowFiles = $CONFIG['imageManagerAllowFiles'];
$path = $CONFIG['imageManagerListPath'];
$allowFiles = substr(str_replace(".", "|", join("", $allowFiles)), 1);
//获取文件列表
$path = $_SERVER['DOCUMENT_ROOT'] . (substr($path, 0, 1) == "/" ? "" : "/") . $path;
$files = getfiles($path, $allowFiles);
if (!count($path)) {
return "抱歉,没有找到匹配的文件!";
}
//获取指定范围的列表
$len = count($files);
for ($i = 0, $list = array(); $i < $len; $i++) {
$list[] = $files[$i];
}
$rand = array_rand($list, 1);
$img = $list[$rand];
$imgFile = $_SERVER['DOCUMENT_ROOT'] . (substr($list[$rand], 0, 1) == "/" ? "" : "/") . $img;
$imgNot = $_SERVER['DOCUMENT_ROOT'] . '/' . 'nico.gif'; //无授权域名图片
$refer = $_SERVER['HTTP_REFERER']; //前一URL
//存在前一URL
if ($refer) {
if (!checkReferer()) {
$karnc->getdir($imgNot);
$karnc->img2data();
$karnc->data2img();
die;
} else {
$karnc->getdir($imgFile);
$karnc->img2data();
$karnc->data2img();
die;
}
} else {
//直接访问API地址
$imgWeb = file_get_contents('imgweb.html');
echo $imgWeb;
die;
}
?>
多文件夹说明: 第二个文件夹无需配置,直接使用 URL 传递参数即可。
比如: 默认文件夹的分类,调用的域名是:“ 你的域名/images ”
其它文件夹的分类,调用是域名是:“ 你的域名/images/文件夹名 ”
注意! 若要使用随机数调用,必须启用 Apache 或者 Nginx 的伪静态功能,否则空白输出。
Nginx 用户需要手动添加 nginx.conf 文件里面的伪静态规则到你的域名配置中去……
rewrite ^/images$ /images.php last;
rewrite ^/images/(.*?)$ /images.php?folder=$1 last;
#下面是子目录例子:
rewrite ^/api/images$ /api/images.php last;
rewrite ^/api/images/(.*?)$ /api/images.php?folder=$1 last;
Apache伪静态
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^images$ images.php [L,QSA]
RewriteRule ^images/(.*?)$ images.php?folder=$1 [L]
</IfModule>
使用随机数载入的情况通常在一个页面多次调用随机图的时候,比如首页文章列表,否则图片都是一样的。
随机数载入方式:“ 你的域名/images?随机数 ” ,就是原有 URL 上添加一个英文问号和任意随机数。
示例:
<img src="https://cf.cdn.xiazai.de/api/images">
<img src="https://cf.cdn.xiazai.de/api/images/acg">
<img src="https://cf.cdn.xiazai.de/api/images?d8c196951e5bbf3edd158de4">
<img src="https://cf.cdn.xiazai.de/api/images/acg?9f0d34f8ee6f96b56d8902d1">
这是评论测试
飞歌导航东方红烦得很
这是新的一条评论
未来一年,中国的移动支付市场会是什么样?