今天在將erp裏面的數據導出爲excel的時候,發現訂單id(一長串數字)變成了科學計數格式。
如下這樣的格式:
字符串63114825259831409
顯示成爲6.3114825259831E+16
這樣的了。
方法一
小編第一想到的就是將對應單元格的格式改爲文本。
於是加上如下代碼:
的確是成功改成了文本格式,但是問題依舊。
原因是什麼呢?
因爲php在處理大數字時超出了當前環境int型的最大值,於是將其以科學計數法進行存儲。
那麼在這裏又要解決php在處理大數字的問題:在賦值是對其加上引號。
<?php
$num="63114825259831409";
echo $n;
?>
但是應用到phpexcel中,導出並不理想。
方法二
在導出的對應代碼的時候,指定數據類型。
方法三
在大數字前面加上空格,使其成爲字符串
總結
解決PHPExcel導出長數字被轉爲科學計數的方法,小編推薦使用方法一和方法二,因爲小編導出數據是循環的,爲了方便就直接使用的在前面加空格的方法。