Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Chrome添加了“-,附件「;下载文件_Php_Google Chrome_Symfony_Content Disposition_Force Download - Fatal编程技术网

Php Chrome添加了“-,附件「;下载文件

Php Chrome添加了“-,附件「;下载文件,php,google-chrome,symfony,content-disposition,force-download,Php,Google Chrome,Symfony,Content Disposition,Force Download,我使用Symfony2框架并使用以下代码导出xml文件: $response->setStatusCode(200); $response->headers->set('Content-Type', 'application/xml'); $response->headers->set('Content-Description', 'Submissions Export'); $response->headers->set('Content-Dispos

我使用Symfony2框架并使用以下代码导出xml文件:

$response->setStatusCode(200);
$response->headers->set('Content-Type', 'application/xml');
$response->headers->set('Content-Description', 'Submissions Export');
$response->headers->set('Content-Disposition', 'attachment; filename="' . $filename .'"');
$response->headers->set('Content-Transfer-Encoding', 'binary');
$response->headers->set('Pragma', 'no-cache');
$response->headers->set('Expires', '0');
我不管是采用“内容传输编码”还是“Pragma”或除“内容类型”和“内容处置”之外的所有内容。Chrome中的结果总是:“文件名-,附件”(不带)。 在Firefox中,这很好


例如,如果我有一个名为home.xml的文件,Firefox会下载home.xml,而Chrome会给我home.xml-,附件。

我知道这是一个非常古老的讨论,但如果有人来这里寻求帮助,我确定Chrome似乎希望在文件名末尾加一个分号,然后它会很高兴。如(VBScript):

那帮我修好了。
-Dave

我在ZEND也遇到了同样的问题,因为我发现了很多不起作用的东西,我想把我的anwser添加到这篇文章中。因为我花了一段时间来解决它,我想更多的用户和开发人员会想知道我是如何解决的。我在fopen调用之前添加了这个

header('Content-Disposition: attachment; filename='.time().'.csv');

为我解决了这个问题。在我使用ContextSwitch之前,它有一个bug,但现在它可以作为一个符咒使用。不要忘记删除以前的内容处置标题,因此可能会出现双标题错误。

据我所知,这可能是另一个问题的重复。这是一个已知的bug,Chrome会将\“转换为-(出于某种原因)。可能它已经被修复。我认为我的问题与任何类型的转换无关。Chrome似乎出于某种原因更改了文件名,无论我使用xml、pdf还是任何其他类型的文件。据我所知,您的代码在文件名的末尾也有一个引号。即;-$filename。”“’。为什么不删除引号并检查一次:)我做了(多次)。没有引号,只有“,\”,“,\”等没有解决问题/创建了(有趣的)新的(附加的)引号。@Akshay我知道了。你链接的帖子不是同一个问题,但它帮助我找到了解决办法。“-”表示其中一个(“)确实正在转换,而(,)表示某种“附加”文件。解决方案:在整个开发过程中,碰巧我发送了两次标题--谢谢:)真的吗?-这显示了“重复的内容配置”“我犯了错误,停了下来。我仍在寻找解决方案,我在这里提交了一个bug:
header('Content-Disposition: attachment; filename='.time().'.csv');