0

我有这个简单的代码

<?php
//header info for browser
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=file.xls");
header("Cache-Control: cache, must-revalidate");
header("Pragma: public");
header("Expires: 0");
echo pack("CCC",0xef,0xbb,0xbf);//utf-8
/* * *****Start of Formatting for Excel****** */

$data = "text1 \t text2 \t";

print($data);
?>

这将创建一个 excel 文件。我的问题是 \t 制表符不起作用。一切都在excel文件的第一列。怎么了?

4

2 回答 2

0

我使用 "\r\n" escs 的时间不长:

$data = "text1 \\t text2 \\t";
echo '<pre>'; 
var_dump($data); 
echo '</pre>';
于 2013-03-08T14:32:32.130 回答
0

如果有人有同样的问题,我找到了解决方案

  <?php
  //header info for browser
  header("Content-type: application/octet-stream");
  header("Content-Disposition: attachment; filename=file.xls");
  header("Cache-Control: cache, must-revalidate");
  header("Pragma: public");
  header("Expires: 0");

  $data = "text1 \t text2 \t";
  $data = mb_convert_encoding($data, 'UTF-16LE', 'UTF-8');
  $data = "\xFF\xFE" . $data;

  echo $data;
?>
于 2013-03-08T15:20:56.403 回答