Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何禁用目录列表的缓存?_Php_Javascript_Ajax - Fatal编程技术网

Php 如何禁用目录列表的缓存?

Php 如何禁用目录列表的缓存?,php,javascript,ajax,Php,Javascript,Ajax,如何每次都获得新(未缓存)文件列表 我有一个简单的php脚本,它将目录的内容放入数组中。 我第一次使用它时,它工作得很好,但是8分钟后我再次调用它时,它仍然提供了以前的文件列表。我知道每隔六七分钟就会有新的文件添加到目录中,我需要最新的文件。 在我的代码片段中,您会看到我尝试了各种“无缓存”建议,但它们都不起作用 <?php //header(“Pragma: no-cache”); //header(“cache-Control: no-cache, must-revalidate”)

如何每次都获得新(未缓存)文件列表

我有一个简单的php脚本,它将目录的内容放入数组中。 我第一次使用它时,它工作得很好,但是8分钟后我再次调用它时,它仍然提供了以前的文件列表。我知道每隔六七分钟就会有新的文件添加到目录中,我需要最新的文件。 在我的代码片段中,您会看到我尝试了各种“无缓存”建议,但它们都不起作用

<?php 
//header(“Pragma: no-cache”);
//header(“cache-Control: no-cache, must-revalidate”); // HTTP/1.1
//header(“Expires: Mon, 26 Jul 1997 05:00:00 GMT”); // Date in the past

$mySite = ("http://mysite.com/mypath/mydirectory/");
$url = $radarSite;
$html = file_get_contents($url);
$count = preg_match_all('/<td><a href="([^"]+)">[^<]*<\/a><\/td>/i', $html, $files);

print json_encode($files[1]);

?>

问题:如何每次都获得一个新的(未缓存的)文件列表

“伊恩”是对的。 这将“强制”返回一个新的文件列表

一般来说,它将如下所示:

$mySite = ("http://mysite.com/mypath/mydirectory/?v=".time());

远程服务器可能正在进行缓存吗?请尝试使用:
$radarSite=”http://radar.weather.gov/ridge/RadarImg/NCR/JAX/?_=" . time()
re:“远程服务器正在进行缓存吗”。。我希望不会。这是每个NexRad显示器最新“扫描”的政府来源。天气频道和其他需要最新NexRad扫描“快照”的人都在使用它。如果他们的服务器正在“缓存”,那么每六分钟更新一次目录的整个目的都会失败。我已经尝试在末尾添加一个rand(类似于时间概念),但是脚本没有运行……还有其他想法吗?这是文件内容的错误吗?更新:“尝试使用:$radarSite=”“.time()–Ian Dayed”是正确的。我在他的建议中输入了一个错误,认为它不起作用;但确实如此。