之前用php做过一个服务器密码生成器,每次生成之后会打印出来一个网页, 内容就是office2003支持的xml格式的Excel, 另存为就可以变成一个现成的xls, 当初花了一个晚上的时间去扣那个office2003 xml的定义...
然后被烂人1号(baileifirst)鄙视了,他习惯Google一个密码生成器然后自己写xls, 恩。
我这个服务器密码生成器的主要问题是每次要另存为比较的麻烦, 查了下手册,在PDF章节找到了点东西,用header来指定MIME输出。
恩,具体的比较简单。。。

header这几个Content相关都是HTTP/1.1中定义的,Content-type应该是MIME来定义的,懒得看英文RFC的可以到这里来看看中文说明, Content-Length就不用说了,Content-Disposition这个玩意不是标准HTTP/1.1定义,有的浏览器不支持。
PS:关于Content-Disposition
这是Java相关的一篇文章
这是DotNet相关的一篇文章
然后被烂人1号(baileifirst)鄙视了,他习惯Google一个密码生成器然后自己写xls, 恩。
我这个服务器密码生成器的主要问题是每次要另存为比较的麻烦, 查了下手册,在PDF章节找到了点东西,用header来指定MIME输出。
恩,具体的比较简单。。。
<?php
$content = 'blablabla~';
$length = strlen($content);
header("Content-type: application/vnd.ms-excel");
header("Content-Length: $length");
header("Content-Disposition: attachment; filename=password.xls");
print $content;
?>
然后就可以直接点击打开和保存了~囧$content = 'blablabla~';
$length = strlen($content);
header("Content-type: application/vnd.ms-excel");
header("Content-Length: $length");
header("Content-Disposition: attachment; filename=password.xls");
print $content;
?>

header这几个Content相关都是HTTP/1.1中定义的,Content-type应该是MIME来定义的,懒得看英文RFC的可以到这里来看看中文说明, Content-Length就不用说了,Content-Disposition这个玩意不是标准HTTP/1.1定义,有的浏览器不支持。
PS:关于Content-Disposition
这是Java相关的一篇文章
这是DotNet相关的一篇文章

添加评论