如何使用php来强制文件下载(怎么下载php文件)

本文目录一览:

php 弹出文件下载

通过指定header

如:

?php

$filename = “test.gif”;

header(‘Content-Type:image/gif’); //指定下载文件类型

header(‘Content-Disposition: attachment; filename=”‘.$filename.'”‘); //指定下载文件的描述

PHP中如何突破COOKIE进行下载PHP文件?

答案是不行的。

你即使下载下来了php,那也是执行后的页面了。

你请求那个文件,服务器有可能是apache,是它在管理如果响应请求,而它是解析php的,因此不可能下载下来。

—–

这个和COOKIE无关。迅雷的那个提示,也许是因为,那么页面是需要登陆才能显示,因为你未登陆,所以显示COOKIE无效。

但即使你登陆了,下载下来的也是一个执行后的php文件。

如果php文件可以下载,那网站还有什么安全性呢?

php中强制下载文件的代码(解决了IE下中文文件名乱码问题)

中间遇到一个问题是提交的中文文件名直接放到header里在IE下会变成乱码,解决方法是将文件名先urlencode一下再放入header,如下。

复制代码

代码如下:

?php

$file_name

=

urlencode($_REQUEST[‘filename’]);

header(“Pragma:

public”);

header(“Expires:

0″);

header(“Cache-Control:

must-revalidate,

post-check=0,

pre-check=0″);

header(“Content-Type:

application/force-download”);

header(‘Content-Type:

application/vnd.ms-excel;

charset=utf-8′);

header(“Content-Transfer-Encoding:

binary”);

header(‘Content-Disposition:

attachment;

filename=’.$file_name);

echo

stripslashes($_REQUEST[‘content’]);

?

解决PHP

Header下载文件在IE文件名中文乱码有两种常见的,一种是是把页面编码改成utf8,另一种是对中文url进入urlencode编码就可以解决了。

解决方案一(我的页面是utf-8编码):

复制代码

代码如下:

$filename

=

“中文.txt”;

$ua

=

$_SERVER[“HTTP_USER_AGENT”];

$encoded_filename

=

urlencode($filename);

$encoded_filename

=

str_replace(“+”,

“%20”,

$encoded_filename);

header(‘Content-Type:

application/octet-stream’);

if

(preg_match(“/MSIE/”,

$ua))

{

header(‘Content-Disposition:

attachment;

filename=”‘

.

$encoded_filename

.

‘”‘);

}

else

if

(preg_match(“/Firefox/”,

$ua))

{

header(‘Content-Disposition:

attachment;

filename*=”utf8”’

.

$filename

.

‘”‘);

}

else

{

header(‘Content-Disposition:

attachment;

filename=”‘

.

$filename

.

‘”‘);

}

解决方法二

将文件名先urlencode一下再放入header,如下。

代码如下:

复制代码

代码如下:

?php

$file_name

=

urlencode($_REQUEST[‘filename’]);

header(“Pragma:

public”);

header(“Expires:

0″);

header(“Cache-Control:

must-revalidate,

post-check=0,

pre-check=0″);

header(“Content-Type:

application/force-download”);

header(‘Content-Type:

application/vnd.ms-excel;

charset=utf-8′);

header(“Content-Transfer-Encoding:

binary”);

header(‘Content-Disposition:

attachment;

filename=’.$file_name);

echo

stripslashes($_REQUEST[‘content’]);

?

用php如何实现下载任意格式的文件

以下载PDF文件为例:

?php

header(‘Content-type: application/pdf’);//文件类型

header(‘Content-Disposition: attachment; filename=”downloaded.pdf”‘);//默认保存的文件名

readfile(‘original.pdf’);//实际的文件路径

?

其他文件类型的写法参考

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/228863.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-10 12:09
下一篇 2024-12-10 12:09

相关推荐

  • PHP和Python哪个好找工作?

    PHP和Python都是非常流行的编程语言,它们被广泛应用于不同领域的开发中。但是,在考虑择业方向的时候,很多人都会有一个问题:PHP和Python哪个好找工作?这篇文章将从多个方…

    编程 2025-04-29
  • vue下载无后缀名的文件被加上后缀.txt,有后缀名的文件下载正常问题的解决

    本文旨在解决vue下载无后缀名的文件被加上后缀.txt,有后缀名的文件下载正常的问题,提供完整的代码示例供参考。 一、分析问题 首先,需了解vue中下载文件的情况。一般情况下,我们…

    编程 2025-04-29
  • 如何在Java中拼接OBJ格式的文件并生成完整的图像

    OBJ格式是一种用于表示3D对象的标准格式,通常由一组顶点、面和纹理映射坐标组成。在本文中,我们将讨论如何将多个OBJ文件拼接在一起,生成一个完整的3D模型。 一、读取OBJ文件 …

    编程 2025-04-29
  • Python中读入csv文件数据的方法用法介绍

    csv是一种常见的数据格式,通常用于存储小型数据集。Python作为一种广泛流行的编程语言,内置了许多操作csv文件的库。本文将从多个方面详细介绍Python读入csv文件的方法。…

    编程 2025-04-29
  • 为什么用cmd运行Java时需要在文件内打开cmd为中心

    在Java开发中,我们经常会使用cmd在命令行窗口运行程序。然而,有时候我们会发现,在运行Java程序时,需要在文件内打开cmd为中心,这让很多开发者感到疑惑,那么,为什么会出现这…

    编程 2025-04-29
  • Python程序文件的拓展

    Python是一门功能丰富、易于学习、可读性高的编程语言。Python程序文件通常以.py为文件拓展名,被广泛应用于各种领域,包括Web开发、机器学习、科学计算等。为了更好地发挥P…

    编程 2025-04-29
  • 如何使用Python获取某一行

    您可能经常会遇到需要处理文本文件数据的情况,在这种情况下,我们需要从文本文件中获取特定一行的数据并对其进行处理。Python提供了许多方法来读取和处理文本文件中的数据,而在本文中,…

    编程 2025-04-29
  • Python将矩阵存为CSV文件

    CSV文件是一种通用的文件格式,在统计学和计算机科学中非常常见,一些数据分析工具如Microsoft Excel,Google Sheets等都支持读取CSV文件。Python内置…

    编程 2025-04-29
  • Python zipfile解压文件乱码处理

    本文主要介绍如何在Python中使用zipfile进行文件解压的处理,同时详细讨论在解压文件时可能出现的乱码问题的各种解决办法。 一、zipfile解压文件乱码问题的根本原因 在P…

    编程 2025-04-29
  • Python如何导入py文件

    Python是一种开源的高级编程语言,因其易学易用和强大的生态系统而备受青睐。Python的import语句可以帮助用户将一个模块中的代码导入到另一个模块中,从而实现代码的重用。本…

    编程 2025-04-29

发表回复

登录后才能评论