¼æÈÝie6ä¯ÀÀÆ÷µÄphpÏÂÔØÎļþ´úÂë·ÖÏí

5年以前  |  阅读数:830 次  |  编程语言:PHP 

PS:Õa¶Î´uÂeÔÚwinϵͳÏÂÅÜûÓÐÎÊÌa,*a¸çÇײa¿ÉÓÃ.Èç¹uÓõÄÊÇlinux»oÊÇÆaËuϵͳ,ÒªÒªÖiλ×ÔÐвaÊÔÏÂÀ².


    $filename = "./".$_REQUEST['name']; //ÕaÀiÊÇ*a¸ç¾ßÌaÂ*¾¶,Ö»Òª$filenameÊÇËuÒªÏÂÔØÎļþµÄÍeÕuÂ*¾¶¾Í¿ÉÒÔ.
    if (!is_file($filename)) {//¼i²aÎļþÊÇ*ñ´aeÔÚ.
     die('ÏÂÔصÄÎļþºÃÏñ¸uTM˭˽±¼À²!');
    }
    $filepath = str_replace('\\', '/', realpath($filename));
    $filesize = filesize($filepath);
    $filename = substr(strrchr('/'.$filepath, '/'), 1);
    $extension = strtolower(substr(strrchr($filepath, '.'), 1));
           // use this unless you want to find the mime type based on extension,Îļþºo׺¸ñʽ,²»½aÊÍ.
    $mime = array('application/octet-stream');
    header('Content-Type: '.$mime);
    header('Content-Disposition: attachment; filename="'.$filename.'"');
    header('Content-Transfer-Encoding: binary');
    header('Content-Length: '.sprintf('%d', $filesize));
    header('Expires: 0');
    // check for IE only headers,¿ÓµuµÄIE¼i²a,Äa¶®µÄ.
    if (isset($_SERVER['HTTP_USER_AGENT']) &&((strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)))
    {
     header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
     header('Pragma: public');
    }
    else
    {
     header('Pragma: no-cache');
    }
    $handle = fopen($filepath, 'rb');
    fpassthru($handle);
    fclose($handle);

Õa¸o´uÂeÊÇa¸ç´Ó¹uÍaµÄÒ»¸oÕ¾µaÉÏÕÒµ½µÄ,Çײa¿ÉÓÃ.¶ÈÄi³oÀ´µÄ½a¹u,Äa¶®µÄ.Òo´ËÔÚ²(C)¿ÍÉϹ²Ïi³oÀ´,Ï£Íu¶Ô´o¼ÒÓÐÓÃ.¹uÍaµÄÕ¾,µØÖÍuÁË,ûÓаi¨Å³o,Ài½aÏÂ.×iºo,ÑÏËaµÄÉuÃ÷ÏÂ:Õa¸o´uÂe²»ÊÇÎÒдµÄ,ÊÇתÔصÄ.

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例