我用下面的代码导出xls:
<?php
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: inline; filename=filename.xls");
?>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
my export
</body>
</html>
但当我打开它的时候,我得到:
的文件格式和扩展名不匹配。文件可能已损坏或不安全。除非你信任它的来源,否则不要打开它。是否仍要打开它?
有没有办法避免它呢?
发布于 2018-08-23 05:40:12
您得到的是HTML,而不是Excel文件。正如Excel所说,文件格式和扩展名不匹配。如果要避免出现警告消息,请将其另存为HTML文件,然后从Excel中打开它。
<?php
header("Content-Disposition: inline; filename=filename.html");
?>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
my export
</body>
</html>
或输出不同的文件格式,如CSV。这很简单。
<?php
$my_data = [
[1, 2, 3, 4, 5, 7],
[9, 8, 7, 6, 5, 3],
];
header("Content-Type: text/csv");
header("Content-Disposition: attach; filename=filename.csv");
$h = fopen("php://output", "w");
foreach($my_data as $data) {
fputcsv($h, $data);
}
fclose($h);
https://stackoverflow.com/questions/51949837
复制相似问题