程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP生成excel時單元格內換行問題的解決方法

PHP生成excel時單元格內換行問題的解決方法

編輯:關於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 />解釋成回車了。


在此多謝“卡卡西的真面目” 這位仁兄 把 知識分享出來。 要不然的話,不知道我還要折騰到什麼時候才能解決!!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved