将获取的BING图链接进行缓存,减少服务器负担,提升访问速度。
$filename = "./cache.json";
if (file_exists($filename) === false) {
file_put_contents($filename, "");
}
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);
$contents = json_decode($contents, true);
if (filesize($filename) === 0) {
getBingImg();
} else {
if ($contents['time'] === date("Ymd")) {
Header("Location: " . $contents['url']);
} else {
getBingImg();
}
}
function getBingImg()
{
$str = json_decode(file_get_contents('https://cn.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1'));
if (isset($str->images[0])) {
$impurely = 'https://cn.bing.com' . $str->images[0]->url;
} else {
$impurely = false;
}
if ($impurely) {
global $contents;
if ($contents['url'] !== $impurely) {
global $filename;
$data = array(
"time" => date("Ymd"),
"url" => $impurely
);
$data = json_encode($data);
file_put_contents($filename, $data);
}
Header("Location: " . $impurely);
exit();
} else {
exit('error');
}
}
?>