我试图找出如何将xml文件下载到我的服务器并保持1小时然后再次下载,以缓存它以加快我的网站速度,但不必太高兴.
到目前为止我只是每次下载它:
$data = file_get_contents('http://www.file.com/file.xml');
$fp = fopen('./file.xml', 'w+');
fwrite($fp, $data);
fclose($fp);
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我为此添加一些缓存吗?
提前致谢
理查德
最好的解决方案是编写一个每小时运行一次的CRONJOB,然后生成xml.
如果您不知道,可以使用文件修改时间执行以下解决方案.
$sFileName = './file.xml';
$iCurrentTime = time();
$iFiletime = filemtime($sFileName);
if ($iFiletime < $iCurrentTime - 3600) {
$data = file_get_contents('http://www.file.com/file.xml');
$fp = fopen($sFileName, 'w+');
fwrite($fp, $data);
fclose($fp);
}
Run Code Online (Sandbox Code Playgroud)