将mysql数据导出到CSV后发出号码

当我从数据库中获取数据并将其导出为csv文件时,我有以下问题:

  • 数字dosnt显示的前导零
  • 大数字显示这样 – > 1E+12

如何强制MS Excel通过PHP显示我的所有数据为string

你可以用双引号包含数字,就像这样:

 if(is_numeric($column)) $column = '"'.$number.'"'; 

这不是MySQL的问题,这是一个Excel的事情。

这…可能有所帮助: http : //answers.microsoft.com/en-us/office/forum/office_2007-excel/disabling-scientific-notation/943b8103-8c50-451d-8037-c697422e2307

但是这个问题比编程更多的MS Office相关。

(或者按照build议的注释,使用带有显示格式信息的文件格式,例如.xls)

我把它作为一个string来格式化,把它与起点和终点的空格连接起来。

CONCAT(" ", database_number, " ") AS "Number For Excel"

你可以使用number_formate()函数来转换…

查看链接

函数:number_format()语法:number_format(float $ number,int $ decimals = 0,string $ dec_point ='。',string $ thousands_sep =',')将6.90743E + 11转换为数字的示例

number_format(6.90743E + 11,0,'','')//输出690743000000