php实现支持中文的文件下载功能示例
媒介本文首要给各人先容了关于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目次下 示例 直接上代码,代码中有具体注释 这里只是做了一个示例(只包罗焦点成果),为了利便声名直接以GET方法从url中获取用户想要下载的文件名称 留意以下两行代码(为了可以或许下载中文名称的文件) 假如用户必要下载的是中文名称的文件。则必要将文件路径转换成gbk编码,不然会呈现 文件不存在 之类的错误。header中配置utf8编码,也是同样的原理 下载文件打开赏识器,会见 http://127.0.0.1/rewrite/忧伤.zip 文件便开始下载了 总结以上就是这篇文章的所有内容了,但愿本文的内容对各人的进修可能事变能带来必然的辅佐,假若有疑问各人可以留言交换,感谢各人对编程之家的支持。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |