如何用PHP获取Bing背景图
时间:2022-05-15
本文章向大家介绍如何用PHP获取Bing背景图,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
网上获取Bing背景图的方法很多,但是好像很多都是获取的都是1366x768像素的,大屏幕下这个大小好像不够用,但是Bing网站的背景图是1920x1080的,官方用的是Josn方式获取的,于是在CSDN到了下面的代码:
$str = file_get_contents('http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1');
$array = json_decode($str);
$imgurl = $array->{"images"}[0]->{"url"};
用echo $imgurl;就可以输出图片地址了,在本地测试正常,但是我的实际应用却遇到了一些问题,上传到主机只能输出"/az/hprichbg/rb/图片名_1920x1080.jpg"不含主机头的地址,万分不解,于是我就稍微改造了下:
$imgurl = 'http://s.cn.bing.net'.$array->{"images"}[0]->{"urlbase"}.'_1920x1080.jpg';
这样就可以在一些比较特殊的主机上正常调用图片了,而且上面的方式还可以用一些CDN镜像这些图片来加速静态文件访问速度,比如我就是用的七牛云存储,简单粗暴的就应用上了。
解析:
$str = file_get_contents('http://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1');
idx=0的意思是当天的图片,1为昨天使用的图片,-1为明天要使用的图片,最小为-1,最大为15,也就是可以通过修改idx可以获取最近17的图片。 n=1 则是打印几个图片josn,默认1就可以打印一个图片信息,可以修改一下做其他用途。
- 通过编程控制CPU利用率(r4笔记第69天)
- Java基础(01)-15总结对象数组,集合Collection,集合List
- 【专业技术】Android内存泄漏简介
- 设计模式之工厂方法(r4笔记第89天)
- delete相关的pl/sql调优(r4笔记第87天)
- Java文件上传与下载【面试+工作】
- QBC查询
- 一条delete语句的调优(r4笔记第86天)
- Java支付宝接口开发【面试+工作】
- 03.SVN检出/解决冲突/提交
- Spring思维导图,让Spring不再难懂(mvc篇)
- SQL优化一(SQL使用技巧)
- Spring思维导图,让Spring不再难懂(aop篇)
- MongoDB初探第二篇 (r4笔记第82天)
- php概述
- php教程
- php环境搭建
- PHP书写格式
- php变量
- php常量
- PHP注释
- php数组
- php字符串 string
- PHP整型 integer
- PHP浮点型 float
- php布尔型
- php数据类型之数组
- php数据类型之对象
- php数据类型之null
- php数据类型之间的转换
- php运算符
- php表达式
- PHP循环控制
- PHP流程控制
- php函数
- php全局变量
- PHP魔术变量
- php命名空间
- php 日期
- PHP包含文件
- php文件
- PHP 文件上传
- php Cookies
- php Sessions
- php email
- php安全email
- php错误处理
- PHP异常处理
- php过滤器
- PHP 高级过滤器
- php json
- php 表单
- PHP MySQL 简介
- PHP 连接 MySQL
- php创建数据库
- php 创建表
- php mysq 插入数据
- PHP MySQL 插入多条数据
- PHP MySQL 预处理语句
- php mysql 读取数据
- php mysql where
- PHP MySQL Order By
- PHP MySQL Update
- PHP MySQL Delete
- php ODBC
- 【JMeter系列-6】JMeter BeanShell Sampler与JMeter BeanShell断言
- 【JMeter系列-7】Linux下执行测试
- 【JMeter系列-8】JMeter自定义日志与日志分析
- 【JMeter系列-9】 JMeter常用内置对象
- 【JMeter系列-10】JMeter websocket接口测试
- [Mysql-2] 远程连接数据库错误:host 'xxx.xxx' is blocked
- Linux超能力BPF技术介绍及学习分享(技术创作101训练营)
- 已创建好的vue项目引入vuex
- 【Mysql学习之旅-2】经典sql面试题及答案分析
- 【Mysql-3】条件判断函数-CASE WHEN、IF、IFNULL详解
- Linux设备树语法详解
- 【Mysql进阶-2】图文并茂说尽Mysql索引
- 1.8W字|了不起的 TypeScript 入门教程(第二版)
- 【Mysql进阶-3】大量实例悟透EXPLAIN与慢查询
- 基于helium自动化测试的方法进行代码仓库梳理和备份