【问题标题】:How to debug fgetcsv function in php?如何在 php 中调试 fgetcsv 函数?
【发布时间】:2011-12-21 05:48:33
【问题描述】:

我在使用fgetcsv 函数时遇到问题。问题是确切的代码在我的本地有效,但在服务器中无效。以下是代码:

if (($handle = fopen("tmp/".$xlsfile, "r")) !== FALSE) {
    $data = fgetcsv($handle, 1000, ",");
    ...
}

调试时,$handle 的 print_r 返回一些东西(资源 #99),但 print_r $data 什么也不返回。

这对我来说有点奇怪,因为当我在本地测试时,完全相同的代码和 .csv 文件可以工作。上传 csv 函数有效,因为我可以看到文件已上传,并且 fopen 返回正确的值。

我注意到的唯一区别是,在该页面中,实时服务器使用 https,但我认为这应该不是问题,因为文件已上传,并且 fopen 成功。

有人有想法吗?

更新 [已解决]: 我找到了解决办法,因为在live server中,这个页面使用了https,但是提交csv文件的form url前面没有https。

【问题讨论】:

  • 授予 cvs 文件的完全权限。
  • 你能检查"tmp/".$xlsfile 是否导致一个存在的文件?
  • 是的,该文件确实存在,我确实检查过。 fopen 成功的事实似乎证实了这一点。

标签: php fgetcsv


【解决方案1】:

你的意思是这样的:

//授予权限然后执行 $file = fopen("your_file.csv","r"); print_r(fgetcsv($file)); fclose($文件);

【讨论】:

    猜你喜欢
    • 2014-03-25
    • 2010-11-19
    • 2015-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-29
    • 2019-01-20
    相关资源
    最近更新 更多