【问题标题】:Reading csv file returns wrong data after updating csv file content更新 csv 文件内容后读取 csv 文件返回错误数据
【发布时间】:2018-11-05 12:48:33
【问题描述】:

我有一个名为 data1.csv 的 csv 文件。我第一次使用 php 读取 csv 文件内容时,我可以正确获取内容。问题是更新data1.csv 中的数据后,我无法读取新数据。它不断返回以前的数据。可能出了什么问题?

    $file_handle = fopen($csvFile, 'r');
    if(!$file_handle) die("Can't open file");

    while (!feof($file_handle) ) {
      $line_of_text[] = fgetcsv($file_handle, 0, $csv_spliter);

    }

    clearstatcache();

    fclose($file_handle);
    $file_content = $line_of_text;

【问题讨论】:

  • 读取的代码有效吗?您能否展示一个不工作的以及如何更新 csv 文件?
  • 这段代码可以读取csv内容。 csv 是手动更新的
  • 完全删除文件是否也会得到旧数据?如果它只影响新行,则可能是行尾问题。
  • 您检查数据是否正确保存?
  • @ovicko 这就是你的问题。看到这个问题:stackoverflow.com/questions/511476/…

标签: php file csv


【解决方案1】:

由于您是通过 http/https 检索数据,因此很可能会被缓存。见Does PHPs fopen function implement some kind of cache?

【讨论】:

  • 我已经尝试使用解决方案,但仍然没有区别
  • 您是否尝试在每次尝试获取 URL 时向 URL 添加唯一的查询字符串,例如https://example.com/feed/data1.csv?12345?
  • @ovicko 如果我的回答对你有用,请考虑将其标记为已接受的答案,谢谢!
猜你喜欢
  • 2021-12-25
  • 2021-07-29
  • 2011-12-12
  • 2017-01-01
  • 2019-04-29
  • 1970-01-01
  • 2014-01-17
  • 1970-01-01
相关资源
最近更新 更多