【发布时间】:2019-10-31 21:52:34
【问题描述】:
我有一个在线 CSV,有时会更新。我打开并阅读它:
$f = fopen("http://www.example.com/myfile.csv", "r");
$headers = fgetcsv($f);
while ($row = fgetcsv($f))
{
echo $row[0];
}
fclose($f);
有时我注意到以下问题:我知道在线 CSV 已更新,但似乎此 PHP 代码读取的是旧版本的 CSV(之前通过调用相同的 PHP 代码),就像它使用 myfile.csv 的缓存版本一样。
fopen($url, "r") 的缓存设置在哪里?有没有办法强制重新下载 URL 并绕过任何缓存系统?
PS:在内部,fopen 使用什么来打开非文件系统文件但远程文件/互联网 URL?
【问题讨论】:
-
可以使用函数
clearstatcache();php.net/manual/en/function.clearstatcache.php -
我不希望 PHP 自动使用缓存。