php怎么判断文件在下载,php文件下载显示找不到文件怎么办
php文件下载显示找不到文件的解决办法:首先打开相应的下载代码文件;然后从浏览器中获取字符的编码;接着使用“mb_convert_encoding”函数转换编码;最后使用“file_exists”函数实现文件下载即可。
推荐:《PHP视频教程》
php 文件下载 以及 file_exists找不到文件的解决方案
链接:点击下载
其中php:<?php
$filename = $_GET['filename'];
//从浏览器获取到的字符的编码是UTF-8,我们要用这个函数转换成GBK才能才本地找到这个文件
$filename = mb_convert_encoding($filename,'GBK','UTF-8');
echo $filename ."
";
if( empty($filename)){
echo''; exit();
}
if (!file_exists($filename)) { //检查文件是否存在
echo "文件找不到";
exit;
} else {
$file = fopen($filename,"r"); // 打开文件
// 输入文件标签
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes");
Header("Accept-Length: ".filesize($filename));
Header("Content-Disposition: attachment; filename=" . $filename);
// 输出文件内容
echo fread($file,filesize($filename));
fclose($file);
exit();
}
?>
总结:如果没有对浏览器传进来的文件地址进行转码(从UTF-8转成GBK),那么file_exists函数将找不到中文名字的文件。
php怎么判断文件在下载,php文件下载显示找不到文件怎么办相关推荐
- 同个网络找不到计算机打印机共享,我已经在一台电脑上设置了打印机共享,为什么另一台电脑输入打印机电脑的IP显示找不到文件...
我已经在一台电脑上设置了打印机共享,为什么另一台电脑输入打印机电脑的IP显示找不到文件以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起 ...
- MFC程序中将软件打包后,setup.exe文件自己电脑运行正常,别人电脑显示找不到文件路径
MFC程序中使用到打开文件,打包后,自己电脑运行正常,别人电脑显示找不到文件路径 困扰了好久的问题,大哭! 问题现象:写了一个升级软件,其中需要读取升级文件并将其内容写入到设备中,使用VS2015软件 ...
- Red Hat6 Linux镜像文件,如何下载红帽企业版Linux的ISO镜像文件,如何开始安装红帽企业版Linux?...
发行版本:红帽企业版 Linux,所有版本 问题: 如何下载红帽企业版 Linux 的 ISO 镜像文件,以便从光盘安装红帽企业版 Linux? 备注:如果您想下载红帽企业版Linux的评估版,需要首 ...
- 打开计算机管理提示找不到文件,Win8系统打开计算机管理提示找不到文件怎么解决...
从windows xp系统到win10系统的发展,功能和界面都有很大的修改,而对于系统本身来说,一些基本设置还是没有变的,比如计算管理,计算机管理是一组 Windows 管理工具,可用来管理本地或远程 ...
- android xml 加载错误提示,加载uixml文件失败 打开wps时显示“加载XML文件失败1
打开wps时显示"加载XML文件失败." 打开wps时显示"加载XML文件失败1 关闭所有打开的Word文档: 开始 → 运行 → 粘贴上面复制的命令 → 确定. 在打开 ...
- 右键计算机管理显示找不到文件,win10右键管理找不到文件怎么办 右键管理找不到文件解决方法...
win10此电脑右键管理找不到文件怎么办?当我们在win10系统中,右击此电脑选择管理选项时,提示找不到Server manager.lnk文件,找不到Server manager.lnk文件怎么解决 ...
- cmd运行JAVA显示找不到文件
我的环境变量设置没问题,hello.java也是在文件夹JAVA下面,为什么会显示找不到呢
- vue/js实现文件流下载,文件下载进度监听
/*** 文档下载(通过文档请求,直接下载文档)* url 请求路径* fileName 下载名称* size 文件大小*/loadDown (url, fileName, size) {var _t ...
- SRA文件的下载(prefetch)和解压SRA文件(fastq-dump)
sra文件下载方式 NCBI-SRA和EBI-ENA数据库 SRA数据库: Sequence Read Archive:隶属NCBI (National Center for Biotechnolog ...
- winpe镜像文件iso下载_教你如何使用iso文件安装系统_一键重装教程
利用iso文件进行安装系统,是一种非常简单方便的方式.不过很多朋友不清楚具体怎么安装.下面小编就给大家介绍iso文件安装系统教程,大家可以参考下. 具体方法如下: 1.搜索小白系统官网,下载小白一键重 ...
最新文章
- 使用WindowsLive Writer2012和officeWord2013发布到博客园全面总结
- 2.5 亿!华为成立新公司!
- Parcelab 和 Serializable
- nagios结合pnp4nagios图表
- DeepMind详解新WaveNet:比原来快千倍,语音更自然 | 附论文
- Linux 下安装matlab2014a
- 【Python基础】Python中的高效迭代库itertools,排列组合随便求
- 程序员圣诞节相册源码_程序员分享圣诞刷屏源码,这次朋友圈千万不要再@微信官方了!...
- 微信第一个“小程序”亮相:不是APP胜似APP!
- mysql 是空字符或null 设置为0_MySQL优化(三) - 数据类型
- mysql5.7 innodb myisam 区别_InnoDB与MyISAM的区别(高性能MySQL笔记)
- 总结django form
- 微课|中学生可以这样学Python(例4.7):定时器
- 读写序列(pickle)
- window.URL对象的使用方式
- latex数学符号加粗_latex 数学符号加粗
- 用DEV-C++制作狼人杀
- c++将文件保存至txt文件的方法
- 获取股票数据【使用JQData查询行情数据、财务指标、估值指标】
- 物理内存是什么是计算机的显卡内存吗,物理内存可用数_可用内存和物理内存是什么意思?_可用物理内存...
热门文章
- 【车间调度】基于matlab遗传算法求解车间调度问题【含Matlab源码 070期】
- 【优化算法】多目标蝙蝠优化算法(MOBA)【含Matlab源码 005期】
- python自动化测试怎么提高效率_自动化测试更适合缺陷预防,而不是提高测试效率...
- gin mysql_golang+gin+mysql构建RESTful API
- 安装Genymotion步骤,启动模拟器时显示CPU不支持虚拟化—解决方法:惠普主机开启VT虚拟化CPU
- linux img提取文件系统,Linux系统获取开发板的文件系统并打包成img文件
- c语言实现作业调度先来先服务和短进程优先,实验2 先来先服务调度和最短作业优先调度算法实现.doc...
- 微信内下载APK 微信浏览器apk下载的解决方案
- datagrid鼠标悬浮提示
- 修改linux的防火墙