加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

php实现支持中文的文件下载功能示例

发布时间:2021-03-13 02:16:42 所属栏目:编程 来源:网络整理
导读:媒介 本文首要给各人先容了关于php实现支持中文的文件下载成果的相干内容,分享出来供各人参考进修,下面话不多说了,来一路看看具体的先容吧。 题目声名 文件下载,凡是有一种最为简朴的要领,那就是将url直接指向处事器上文件的地址位置。可是这个要领存在

媒介

本文首要给各人先容了关于php实现支持中文的文件下载成果的相干内容,分享出来供各人参考进修,下面话不多说了,来一路看看具体的先容吧。

题目声名

文件下载,凡是有一种最为简朴的要领,那就是将url直接指向处事器上文件的地址位置。可是这个要领存在很大的安详隐患。

  • 袒露了处事器文件目次布局
  • 无法榨取犯科哀求来历,无法对文件下载哀求做安详验证

办理方案

一、将文件下载哀求映射到后端措施url

借助http处事器(apache/nginx)实现映射成果

这里以apache为例举办声名

借助apache的rewrite模块,设置rewrite法则。(关于怎样开启rewrite模块,网上许多资源,这里不再赘诉) 在项目根目次下建设.htaccess文件,写入rewrite法则

将全部以rar/zip末了的url,映射给download.php文件(这里为了利便直接映射到了一个php剧本中,假如是行使框架,那就映射到详细的节制器中的某个要领!譬喻:index.php?c=home&a=download)

二、编写详细的文件下载逻辑

项目目次

以当地项目为例,用户必要下载的zip文件,放在当前项目标temp目次下

php实现支持中文的文件下载成果示例

示例

直接上代码,代码中有具体注释

这里只是做了一个示例(只包罗焦点成果),为了利便声名直接以GET方法从url中获取用户想要下载的文件名称

留意以下两行代码(为了可以或许下载中文名称的文件)

假如用户必要下载的是中文名称的文件。则必要将文件路径转换成gbk编码,不然会呈现 文件不存在 之类的错误。header中配置utf8编码,也是同样的原理

下载文件

打开赏识器,会见 http://127.0.0.1/rewrite/忧伤.zip 文件便开始下载了

总结

以上就是这篇文章的所有内容了,但愿本文的内容对各人的进修可能事变能带来必然的辅佐,假若有疑问各人可以留言交换,感谢各人对编程之家的支持。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读