[英]From SQL to Excel date format
我发现了一个代码,可以帮助我获取数据库的Excel表,它与除“ date”列之外的所有列均能正常工作,它只为我提供#######。
此“日期”列是sqlite中的DATETIME类型(默认情况下输入当前日期(yyyy-mm-dd)),数据来自HTML的输入类型date。
这是我的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中使日期列更宽;-)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.