2017-02-27 77 views
0
<?php echo $num > 0 ? number_format((float)$num, 3, '.', '') : number_format((float)$num_neg, 3, '.', '');?> 

該代碼是用來顯示與在Excel頁3十進制格式的數字,但所產生的的excel頁不與3小數顯示數格式如果數字不包含十進制值。如果我們連接任何字符串值,生成的Excel表格將正確顯示帶有十進制值的數字。是他們的任何解決方案。Excel表未顯示在3十進制格式小數部分

+0

試試這個:https://degreedocumentation.wordpress.com/2012/08/17/how-to-format-a-number-cell-in-phpexcel/但如果你不要用它來計算,總和等,只是把它像一個字符串。 – rad11

回答

2

要顯示單元格內容的原始格式,請在值的開頭附加':強制excel將內容視爲文本。

<?php 
echo $num > 0 
    ? "'".number_format((float)$num, 3, '.', '') 
    : "'".number_format((float)$num_neg, 3, '.', ''); 
?> 

如果文件是.csv格式,此解決方案可以正常工作。 對於使用PHPEXCEL的excel文件.xls,請參閱PHPExcel Style getting default number format

+0

附加在值的開頭''' – user2342558

+0

請參閱我的上次編輯。 – user2342558

+0

您的解決方案很有幫助,但獲得的輸出包含數字開頭的報價(例如:'0.000) – Jibin