PHP下载功能的实现和获得当前目录

本文介绍了一种在PHP中实现文件下载的方法,并分享了作者的实际经验。特别注意的是,在不同操作系统下路径分隔符的区别及如何正确获取当前目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PHP的下载功能怎么实现,网上教程一堆。以下是我亲测可用的。但有两个需要注意的地方

注意
1.windows系统目录结构的斜杠“\”,Linux系统的斜杠为”/”,是相反的。我的代码在windows中写好后,部署到Linux上时,无法执行。最后发现导致问题的原因是这个。(后来经过测试,发现window中正反斜杠都可以)。
2.getcwd();方法。这个方法可以得到当前目录。


    // echo getcwd();
    $file_url = "./Public/File/haha.apk";
    if(!isset($file_url)||trim($file_url)==''){  
        echo  '500';  
    }  
    if(!file_exists($file_url)){ //检查文件是否存在  
        echo '404';
    }  
    $file_name=basename($file_url);  
    $file_type=explode('.',$file_url);  
    $file_type=$file_type[count($file_type)-1];  
    $file_name=trim($new_name=='')?$file_name:urlencode($new_name);  
    $file_type=fopen($file_url,'r'); //打开文件  
    //输入文件标签  
    header("Content-type: application/octet-stream");  
    header("Accept-Ranges: bytes");  
    header("Accept-Length: ".filesize($file_url));  
    header("Content-Disposition: attachment; filename=".$file_name);  
    //输出文件内容  
    echo fread($file_type,filesize($file_url));  
    fclose($file_type); 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值