如何在PHP中强制下载文件

我有图像列表,我想要一个“下载”链接以及每个图像,以便用户可以下载图像.

有人可以指导我如何为PHP中的任何文件提供下载链接

EDIT

我想在点击下载链接显示下载面板我不想导航到要在浏览器上显示的图像

如果要强制下载,可以使用以下内容
<?PHP
    // Fetch the file info.
    $filePath = '/path/to/file/on/disk.jpg';

    if(file_exists($filePath)) {
        $fileName = basename($filePath);
        $fileSize = filesize($filePath);

        // Output headers.
        header("Cache-Control: private");
        header("Content-Type: application/stream");
        header("Content-Length: ".$fileSize);
        header("Content-disposition: attachment; filename=".$fileName);

        // Output file.
        readfile ($filePath);                   
        exit();
    }
    else {
        die('The provided file path is not valid.');
    }
?>

如果您只是使用普通链接链接到此脚本,则将下载该文件.

顺便提一下,上面的代码片段需要在页面的开头执行(在任何标题或HTML输出发生之前).如果您决定创建一个基于此的函数来下载任意文件,请注意 – 您需要确保您阻止目录遍历(realpath很方便),只允许从定义区域内下载等,如果您接受来自$_GET或$_POST的输入.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...