两个双引号用于转义双引号,因此看起来您的日期/时间已被引用.如果您只想获得正确引用的CSV,可以尝试删除任何现有的双引号(这可能有点蛮力):
$array = array('testname',045645765789,'"04.07.2012 12:10:52"');
$array = str_replace('"', '', $array);
fputcsv($fp, $array);
// Output: testname,79323055,"04.07.2012 12:10:52"
fputcsv想要在一个带有空格的字符串周围放置一些东西,所以如果你根本不需要引号,你或者需要解决它们或者让你自己的函数做你想做的事情.在this question下有很多很好的解决方案(编辑:这是一个不同的链接).或者,在PHP manual的评论中还有许多其他解决方案.
根据第一个链接,您可以:
$array = array('testname',045645765789,'"04.07.2012 12:10:52"');
$array = str_replace('"', '', $array);
fputs($fp, implode($array, ',')."\n");
// Output: testname,79323055,04.07.2012 12:10:52