PHP生成excel时单元格内换行问题的解决方法

yipeiwu_com6年前PHP代码库
翻出来源码开了下,字符串中使用换行的方法为"Name:{$name}\nAddress:{$adress}\nCity:{$city}\nCountry:{$country}\n ......"
既然"\n"起不到换行的目的,修改成"\r\n"看看.
修改 =》 提交 =》测试
得出的结果还是 没有换行!!!!
难道是操作系统兼容问题??
直接使用php runtime 常量 PHP_EOL 替代 "\r\n"
修改 =》 提交 =》测试
得出的结果还是 没有换行!!!!
什么情况? 不可能这个也解决不了 操作系统兼容性问题的换行符号。
看看到底这个xls文件是怎么用php生成的。
看了下 生成excel的代码,Oh My Lady gaga,原来是用html的格式,只是文件后缀写成xls,既然html的格式,那么应该<br />可以起到换行的效果吧。
继续
修改 =》 提交 =》测试
结果是 可以换行了。 可喜可贺啊。问题终于解决了。
告诉老大问题解决,此时心中甚是喜悦啊。

过了一刻钟的样子,老大跑过来说:“换行效果的问题是解决了,但是你看下,数据不好复制了。”
。。。。
省略沟通N句。
把一个单元格的数据复制下,然后 粘贴到 word中。Oh My Lady gaga, 为啥会有border????
到底什么问题?? 使用\n、\r\n 把不能起到换行的相关,使用<br />把效果是有了,但是又出现了新问题。。。 到底如何是好?
没辙了,使用BAIDU google吧。
终于 黄天不负有心人,找到了问题的答案。
在<style></styel>标签中追加 CSS样式br {mso-data-placement:same-cell;}
终于 问题 完美解决。
原文如下:
复制代码 代码如下:

将HTML文件的扩展名改为XLS后,用Excel打开,里边的每个<br />都会使后边的文字进入另一个单元格,要使<br />在一个单元格内起到换行的作用,可以在CSS里加入这一句:
br {mso-data-placement:same-cell;}

Excel就会把<br />解释成回车了。


在此多谢“卡卡西的真面目” 这位仁兄 把 知识分享出来。 要不然的话,不知道我还要折腾到什么时候才能解决!!

相关文章

Windows下利用Gvim写PHP产生中文乱码问题解决方法

首先:找出乱码产生的原因。 一直以为是浏览器的原因,结果我在chrome,firefox,IE9里面都出现了乱码,所以浏览器的因素可以排除。为了验证我猜测是Gvim的原因, 我用记事本(...

php依赖注入知识点详解

引言 你知道什么是依赖注入吗?依赖注入(DI)的概念虽然听起来很深奥,但是如果你用过一些新兴的php框架的话,对于DI一定不陌生,因 为它们多多少少都用到了依赖注入来处理类与类之间的依赖...

PHP新手NOTICE错误常见解决方法

刚学习PHP,不久,一般就看看手册,和一本叫PHP和mysql web开发的。 最近在整留言板,刚才遇到个问题。 页面中,好多类似 Notice: Use of undefined co...

php基于ob_start(ob_gzhandler)实现网页压缩功能的方法

php基于ob_start(ob_gzhandler)实现网页压缩功能的方法

本文实例讲述了php基于ob_start('ob_gzhandler')实现网页压缩功能的方法。分享给大家供大家参考,具体如下: PHP生成网页后传送给浏览器显示 ,页面的打开速度除了与...

PHP命名空间用法实例分析

PHP命名空间用法实例分析

本文实例讲述了PHP命名空间用法。分享给大家供大家参考,具体如下: 在讲解命名空间之前,我们先了解一个问题。 我们在网站根目录创建一个文件夹,在文件夹中创建a.php <...