当前位置: 首页 > news >正文

通过必应壁纸官方api实现网页背景图片随机展示

创建一个php文件background.php,然后在里面写上php代码段:

<?php

// background.php

$json_string = file_get_contents('https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=3&mkt=zh-CN');

$data = json_decode($json_string, true);

$url = 'https://cn.bing.com' . $data['images'][0]['url'];

echo $url;

?>

html网页的css代码:

<style>

body {

background-image: url('<?php echo file_get_contents('background.php'); ?>');

background-size: cover;

background-position: center;

margin: 0;

padding: 0;

}

</style>

这样每刷新一次网页,背景图片就会变一次。不过加载图片的速度有点慢…就加载速度来说不如用固定图片链接快,毕竟这个得获取解析再调用。

也可以就写到网页的html代码里面,放最下面就行。

<?php

function get_random_bing_image() {

// 获取每日壁纸列表

$json_string = file_get_contents('https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=3&mkt=zh-CN');

$data = json_decode($json_string, true);

// 选择随机一张图片

$random_index = array_rand($data['images']);

$image_data = $data['images'][$random_index];

// 构建完整的图片URL

$url = 'https://cn.bing.com' . $image_data['url'];

return $url;

}

?>

然后在css里面:

<style>

body {

background-image: url('<?php echo get_random_bing_image(); ?>');

background-size: cover;

background-position: center;

margin: 0;

padding: 0;

}

</style>

这样只是少单独用一个PHP文件。

官方接口说明:

参数名称值含义
format(非必需)返回数据格式,不存在返回xml格式
js (返回json格式,一般使用这个)
xml(返回xml格式)
idx(非必需)请求图片截止天数
0 今天
-1 截止至明天(预准备的)
1 截止至昨天,类推(目前最多获取到16天前的图片)
n(必需)1-8 返回请求数量,目前最多一次获取8张
mkt(非必需)地区
zh-CN
...
http://www.dtcms.com/a/108399.html

相关文章:

  • substring() 和 slice() 这两个方法的相同与不同
  • Python 脚本:自动化你的日常任务
  • 【element ui】翻页记忆功能、多选时执行删除操作,刷新表格问题
  • VS+Qt配置QtXlsx库实现execl文件导入导出(全教程)
  • 自动调整PPT文本框内容:防止溢出并智能截断文本
  • Shiro学习(三):shiro整合springboot
  • 城电科技 | 探秘零碳校园:创新应用,引领绿色未来
  • PHP在Debian环境上的并发处理能力如何
  • 深度学习处理文本(6)
  • STM32实现一个简单电灯
  • 2023年12月电子学会青少年软件编程四级考级真题—新“跳7”游戏
  • OpenCV
  • 系统与网络安全------Windows系统安全(5)
  • Maya软件中的约束基础:提高角色动画制作效率的关键技术
  • 【解决】Edge浏览器硬件加速问题:无法滚动与卡顿的应对方法
  • Lumerical ------ Edge coupler design
  • Test——BUG篇
  • 掌握 Git 的艺术:Rebase 和 Merge 的使用技巧
  • MySQL 中 LOCK TABLES(手动锁表) 语句的详细说明,包括语法、使用场景、示例代码及注意事项
  • c加加学习之day02
  • ubuntu制做vsftpd的docker镜像
  • git总是链接不成功
  • Excel处理控件Spire.XLS系列教程:C# 打印 Excel 文档
  • 【算法】双指针
  • GIT ---- 解决【fatal: Authentication failed for】
  • 【案例89】达梦数据库优化器参数导致的SQL执行错误
  • 在Ubuntu20.04开发Dify插件教程,部署Dify插件脚手架
  • 深度学习 Deep Learning 第15章 表示学习
  • 针对 MySQL 数据库的详细说明,分类列出临时资源(临时表、游标、未提交事务、会话变量、预编译语句)的创建、清理方式及未清理后果,并以表格总结
  • [CH32] RISC-V汇编指令解释