强制 fputcsv 对 *所有* 字段使用封装

2024-03-11

当我使用fputcsv http://php.net/fputcsv要向打开的文件句柄写入一行,PHP 会向它认为需要的任何列添加一个封闭字符,但会保留其他列而不包含封闭字符。

例如,您最终可能会得到这样的行

11,"Bob ",Jenkins,"200 main st. USA ",etc

除了在每个字段的末尾附加一个虚假空格之外,是否有任何方法可以强制 fputcsv 始终用外壳(默认为“)字符包围列?


否,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(' ')
)

没有“始终包含”选项。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

强制 fputcsv 对 *所有* 字段使用封装 的相关文章

随机推荐