【发布时间】:2011-04-30 20:42:26
【问题描述】:
我正在尝试动态生成一个 csv 文件,其中包含一些包含多行的单元格,例如,地址字段将需要分组到单个“地址”单元格中,而不是地址、城市、州等。一切都是进展顺利,但在过去的两天里,我尝试在代码中插入 \r、\r\n、\n、chr(10)、chr(13) 以及回车以创建回车我在牢房内寻找。所有这些都失败了,要么在我的 csv 中按字面意思打印为“\r”等,要么当我在代码中执行手动回车时,它会生成一个新行。我正在使用它在我的单元格中创建中断,但它不起作用
$groupedCell = implode('\r',$data);
我很确定代码是正确的,因为它将 \r 放置在我想要回车但不是我正在寻找的实际返回的位置。我尝试了一些不同的编码,但仍然没有运气,我正在 Open Office 中进行测试,我猜这可能是问题所在,但我认为它可以处理单元格内的回车,并且我没有看到任何其他支持的文档。感谢阅读!
【问题讨论】:
-
科林,你在这方面有什么进展吗?问题是基于 PHP(可以在 PHP 中使用单引号中的转义序列)还是基于 CSV 规范(转义单元内换行符的各种方式)?
-
我最终没有打破界限。我在这里尝试了所有解决方案,但没有任何效果。我在没有帮助的情况下尝试了单引号和双引号,尽管很高兴知道您需要使用双引号进行转义。也许 CSV 无法以普遍支持的方式拥有此功能?
-
事情是两件不同的事情:在 PHP 中使用双引号来使用转义序列。但有时只有双引号用于在 CSV 单元格中转义。
-
确实,我认为这与软件如何处理 csv 有关,而不是 PHP 如何生成它
标签: php mysql csv openoffice.org