从SQL到Exceldate格式

我发现一个代码,帮助我得到我的数据库的Excel表,它能正常工作,除了“date”列,只是给了我#######。

这个“date”列是sqlite中的DATETIMEtypes(它默认input当前date(yyyy-mm-dd)),数据来自HTML中的inputtypesdate。

这里是我的PHP代码:

<?php namespace Chirp; include "./_pdo.php"; $db_file = "./test.sqlite"; PDO_Connect("sqlite:$db_file"); $data = PDO_FetchAll("SELECT * FROM test"); // Original PHP code by Chirp Internet: www.chirp.com.au // Please acknowledge use of this code by including this header. function cleanData(&$str) { $str = preg_replace("/\t/", "\\t", $str); $str = preg_replace("/\r?\n/", "\\n", $str); if(strstr($str, '"')) $str = '"' . str_replace('"', '""', $str) . '"'; } // file name for download $filename = "website_data_" . date('Ymd') . ".xls"; header("Content-Disposition: attachment; filename=\"$filename\""); header("Content-Type: application/vnd.ms-excel"); $flag = false; foreach($data as $row) { if(!$flag) { // display field/column names as first row echo implode("\t", array_keys($row)) . "\n"; $flag = true; } array_walk($row, __NAMESPACE__ . '\cleanData'); echo implode("\t", array_values($row)) . "\n"; } exit; ?> 

你会踢自己…

在Excel中使date列变宽;-)