PHP文件下载下载错误文件

时间:2020-09-20 19:37:03

标签: php download readfile

嘿,我需要一些帮助,

我很无聊,所以我想一点点跟youtube-dl玩玩。 我制作了一个小型Web工具,仅使用Youtube-DL进行下载,然后在浏览器中下载了文件。 (这是香港专业教育学院有史以来第一次玩下载文件,如果这是一个非常基本的菜鸟事,对此我深感抱歉)

这是我的代码:

    if (isset($_POST['url'])) {
        if ($_POST['type'] == "Video") {

            shell_exec("youtube-dl " . $_POST['url']);
            $output = shell_exec("youtube-dl --get-filename " . $_POST['url']);

            header('Content-Description: File Transfer');
            header('Content-Type: application/octet-stream');
            header('Content-Disposition: attachment; filename="' . basename($output) . '"');
            header('Expires: 0');
            header('Cache-Control: must-revalidate');
            header('Pragma: public');
            header('Content-Length: ' . filesize($output));
            readfile($output);
        }

        die();
    }

但是我遇到了一个非常奇怪的问题。因此,Youtube-DL可以正常工作,并且可以正确下载视频。

但是下载部分只是下载php文件本身(实际上它只是具有php文件的名称,但完全为空)

php files downloading

(也不要介意我把这个奇怪的名字放到其他文件中,但这没关系,因为我在完成下载工作后die();就这样了

也许这里有人可以帮助我! ^-^

0 个答案:

没有答案
相关问题