当我使用 fputcsv 将一行写出到打开的文件句柄时,PHP 会向它认为需要它的任何列添加一个封闭字符,但会让其他列没有附件。
例如,你可能会得到这样的一行
11,"Bob ",Jenkins,"200 main st. USA ",etc
除了在每个字段的末尾附加一个虚假空格之外,有没有办法强制 fputcsv 始终用 shell (默认为“)字符将列括起来?
最佳答案
否,fputcsv() 仅在以下条件下封闭该字段
/* enclose a field that contains a delimiter, an enclosure character, or a newline */
if (FPUTCSV_FLD_CHK(delimiter) ||
FPUTCSV_FLD_CHK(enclosure) ||
FPUTCSV_FLD_CHK(escape_char) ||
FPUTCSV_FLD_CHK('\n') ||
FPUTCSV_FLD_CHK('\r') ||
FPUTCSV_FLD_CHK('\t') ||
FPUTCSV_FLD_CHK(' ')
)
没有“始终附上”选项。
关于php - 强制 fputcsv 对 *all* 字段使用 Enclosure,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2489553/