PHP将文件保存到用户计算机


PHP save file to users computer

我有一个脚本,当单击"添加联系人"按钮时,它会为员工创建一个vCard。我在一个变量中有这个vCard,但我真的不确定接下来该怎么处理它。

我认为我的第一步应该是把这个文件保存在服务器上?

我只想弹出一个框,允许人们下载并保存vCard,所以如果没有必要,我想跳过它。

这里的任何指针都会被通知。

谢谢。

如果您希望在有人请求导出URL时弹出"文件保存"对话框,则必须使用

header("Content-type:text/vcard; charset=utf-8");
header("Content-Disposition: attachment; filename=vcardexport.vcf");
echo $vCardData;

所以不,你不必先把它保存为服务器上的文件。你可以从变量中发球。请注意,只要为"内容类型"指定了正确的MIME类型,就可以对任何其他数据使用这种方法。

另请参阅https://en.wikipedia.org/wiki/VCard和https://www.ietf.org/rfc/rfc2183.txt

如果你的vcard在一个变量中,那么你可以很容易地将其下载到客户端,代码如下:

<?php
header('Content-type: text/vcard');
header('Content-disposition: attachment;filename=vcard.vcf');
echo $vcard_variable;
?>

尝试查看内容处置标头:)

它可以强制在客户端下载文件:)

您只需从PHP输出vCard,即可使用响应标头设置正确的内容类型。这将强制在用户的浏览器上进行下载。我在谷歌上搜索了一下,找到了这个例子。

如果你在服务器上有文件,你可以在按钮上有一个指向文件的链接

<a href="location of the vcard file"><img src="button.jpg"></a>

或者你正在寻找一种不同的交付方式?