如何从远程 url 下载 mp3 文件?

2023-12-02

我将我的网站重定向到一个只有 mp3 文件正在流式传输的 URL,并且我希望将该文件下载到本地计算机。 我怎样才能做到这一点?

我已经搜索过 google 和 stacksoverflow 但这些解决方案对我不起作用 我找不到针对我的具体问题的解决方案。


使用CURL下载,然后您可以使用file_get_contents将文件保存到服务器上,或者您可以使用一些标头强制下载文件。

$ch = curl_init('http://url-to-file.com/audio.mp3');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_NOBODY, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1);
$output = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($status == 200) {
    file_put_contents(dirname(__FILE__) . '/audio.mp3', $output);
}

下载到浏览器:

$ch = curl_init('http://url-to-file.com/audio.mp3');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_NOBODY, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 1);
$output = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($status == 200) {
    header("Content-type: application/octet-stream"); 
    header("Content-Disposition: attachment; filename=audio.mp3"); 
    echo $output;
    die();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从远程 url 下载 mp3 文件? 的相关文章

  • PDO 和 Microsoft SQL:必须声明表变量“@P1”

    我正在尝试使用 PDO 中的绑定从 Microsoft SQL 数据库中选择一些条目 我正在使用的代码看起来与我在文档中找到的代码类似 但是 当我运行它时 我收到以下警告 警告 PDOStatement execute pdostateme
  • PHP 有效读取 csv 文件

    有几种使用 PHP 读取 CSV 文件的方法 我以前用过explode函数将每一行放入一个数组中 然后explode逗号并使用trim删除数据周围的任何引号 本来就很乱 PHP 5 现在有fgetcsv和 str getcsv 我猜这是这些
  • HTML 表单 POST 到 PHP 页面 [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 好的 我创
  • 计算两个数字之间的差异

    我想计算两个给定数字之间的差异 例如 1 5 或 24 35 我必须将数组中的数字分开并写出它们之间的差异 如下所示 1 2 3 4 5 或 24 25 26 27 28 29 30 31 32 33 34 35 是否有任何 php 函数可
  • PHP/MySQL:检索邻接列表模型中的单个路径

    有没有什么有效的方法可以在不限制深度的情况下根据节点的ID检索邻接列表模型中的单个路径 就像如果我有一个名为 Banana 的节点的 ID 我可以获得以下路径 Food gt Fruits gt Banana 如果不可能的话也不是什么大问题
  • 如何从 Laravel 5 中的 Public/Images 文件夹中删除图像(URL 数据)

    如何从 laravel 5 中的 public images 文件夹中删除图像文件 我从这个网站找到了一些例子 但我知道他们只是在他们的文件中使用文件名record table 但我正在使用类似的东西URL e g localhost pr
  • 这些加密算法有什么区别?

    两者有什么区别MCRYPT RIJNDAEL 128 MCRYPT RIJNDAEL 256 MCRYPT BLOWFISH等等 哪一种最适合网络数据传输 Rijandel 是 AES 的另一个名称 AES 是当前的 一个好的标准 算法 数
  • 如何在 PHP 中正确分割路径

    执行以下操作的最佳方法是什么 我通过 AJAX 请求获取路径 e g dir1 dir2 dir3 dir4 我需要在我的网页上这样展示它 dir1 gt gt dir2 gt gt dir3 gt gt dir4 它们每个都是 html
  • 一次将多个值插入MySQL [重复]

    这个问题在这里已经有答案了 谁能解释一下为什么这个 PHP MySQL 不起作用 基本上我需要从表单中一次插入大量行 因此会有多个名称字段 多个短 中 长字段等 我收到此错误 Notice Undefined variable Short1
  • 如何将 ctype_alpha 与 UTF-8 结合使用

    如何将 ctype alpha 与 UTF 8 一起使用 我有这个代码 if empty POST false if isset POST first name empty POST first name if ctype alpha PO
  • jQuery和PHP中如何知道返回数据是Json还是String?

    我想在客户端 jQuery 检查 PHP 函数返回的数据是否是 Json 对象或 String 来分配不同的函数 如果 json 的格式不正确 jQuery 的 parseJson 将生成异常 您可以将调用包装在 try catch 块中
  • 使用 DOM 获取 div 的内容(包括子标签)

    我正在使用 DOM 来获取 div 标签的内容 但内部 html 部分未显示 功能是 dom new DOMDocument libxml use internal errors true dom gt loadHTMLFile url l
  • 如何在 joomla 模块中通过 javascript 发送输入文件类型

    我想将带有 javascript 的文件发送到 php 文件 我的 php 文件中有这个表单
  • 如何创建环境变量来保护我的网站的 Google 地图 API 密钥(或任何其他秘密值)?

    我正在学习使用 Bootstrap 编写自己的网站 并使用 Google 地图 API 密钥和 Google Developers 的脚本轻松地将地图放置在我的页面上 理想情况下 我会有类似的东西 即我已经尝试过这个 Html PHP
  • 将秒转换为天、小时、分钟和秒

    我想转换一个变量 uptime这是秒 分为天 小时 分钟和秒 Example uptime 1640467 结果应该是 18 days 23 hours 41 minutes 这可以通过以下方式实现DateTime http php net
  • ZF2 工厂获取参数

    我有一个动态类别导航 在导航工厂中 我想从路线获取参数 我怎样才能做到这一点 在我看来 在我的 module php 中 public function getServiceConfig return array factories gt
  • 从外部 bash 设置环境变量

    我试图使用 PHP 从命令行 设置 bash 环境变量 但没有成功 buff array buff VARTESTKEY VARTESTVALUE buff export VARTESTKEY file put contents scrip
  • NodeJS 和 PHP (Laravel) 集成用于 Socket.IO 实时聊天

    目前我有一个我写过的网站PHP通过Laravel 框架 我已经使用写了一个实时聊天nodeJS with 套接字IO and Express现在我想做的是将它集成到我已经编写的 Laravel 网站中 问题是聊天必须在主页中 当前由 Lar
  • 哪个 PHP 5 版本最常用?

    当我开发将在不同配置的客户端 Web 服务 通常使用共享托管 上使用的应用程序时 我应该假设大多数 Web 服务器都具有哪个 PHP 5 版本 例如 5 2 x 5 3 x 等 在所有使用 PHP 版本 5 的网站中 有 84 9 使用版本
  • 处理查询字符串参数时 Codeigniter 缓存问题

    问候 我正在编写一个 CI Web 应用程序 它实现标准文件缓存功能 如下所示 this gt output gt cache n 我使用了段和查询字符串参数的组合 因此似乎遇到了问题 我在用例和输出类代码中看到的是 缓存仅基于段 像这样

随机推荐

  • SecurityError:操作不安全。使用 Htmlcanvas [重复]

    这个问题在这里已经有答案了 尝试转换图像我drag并将我的画布元素放入 PNG 或 Jpeg 照片中 有点类似于 Polyvore 的情绪板概念 这样我就可以在一张 PNG 或 Jpeg 照片中一次性查看放置在画布上的所有图像 这样我就可以
  • 在Javascript中实现优先级队列的有效方法?

    优先级队列对于每个条目都有一个优先级值和数据 因此 当向队列添加新元素时 如果它具有比集合中已有元素更高的优先级值 它就会冒泡到表面 当调用 pop 时 我们会获取具有最高优先级的元素的数据 在 Javascript 中 这种优先级队列的有
  • 使用未定义的 webpack 类捆绑 js 文件

    我将以下文件内容捆绑在一起 a js class BaseC doIt console log this class A extends BaseC b js class B extends BaseC var b new B b doIt
  • JSF:如何防止构建阶段由于递归而导致的堆栈溢出(尽管进行了渲染测试)

    对于没有在专用测试用例中抽象这个问题表示歉意 我希望来自真实项目的示例足够简单来描述问题 我有一个 JavaEE JPA2 JSF Web 应用程序 其中每个 Entity 元素 或子类 都有一个模板化 view xhtml 页面和一个标准
  • 使用 CI hook 设置公共变量

    我有几个常用变量 我想使用钩子来设置它们 例如 我有一个 post controller constructor 挂钩 在其中我想执行一些逻辑来设置用户主文件夹 public function post controller constru
  • Enterprise Library 3.1 日志格式化程序模板 - 包括 URL 请求

    我们有一个使用 Ektron v8 0 构建的自定义 Web 应用程序 该应用程序使用 EL 3 1 并且日志记录配置中的格式模板配置如下
  • 如何提高 MongoDB 批量性能?

    我有这个对象 其中包含一些元数据和大量项目 我曾经将其存储在 mongo 中 并通过以下方式查询它 unwind荷兰国际集团的数组 然而 在极端情况下 阵列变得如此之大 以至于我遇到了 16MB BSON 限制 所以我需要将数组的每个元素存
  • 在 cython 中使用函数指针作为模板参数包装 C++ 代码

    我试图将以下用 C 编写的声明包装在 cython 中 template
  • 创建新类与使用导出 const 之间的差异

    Setup BabelJS es2015 反应 第一阶段 Webpack 反应 还原 CommonJS 和 ES6 的新功能 我知道对象实例和方法的静态容器之间的区别 但我不确定它们在分离到模块时的行为如何 所以我想知道返回实例之间有什么区
  • 为什么 Java main() 方法接受 String args 数组?

    既然它可能是 Java 语言中使用最广泛的方法之一 为什么它必须接受字符串数组并且没有它就无法工作 例如 我总是可以忍受 public static void main over public static void main String
  • 使用客户端证书进行智能卡身份验证

    我有一个第三方 Web 应用程序 现在我的经理想要将智能卡身份验证添加到某些页面 而不是整个应用程序 并返回证书信息 我的想法是向这些页面添加按钮 并在onclick事件中 我将进行客户端证书身份验证 其中将出现一个证书选择窗口 后跟 PI
  • Vuetify:使 v-navigation-drawer 占据左上角的所有空间,而不是 v-app-bar

    我有一个 VuetifyJS v3 页面 其中包含v app bar and v navigation drawer两者都在场 并且都与app道具集 这v app bar占据从左上角延伸的所有水平空间 这v navigation drawe
  • 捕捉表格图像

    我有一个带有控件的表单 我需要捕获该表单以进行图像处理 请帮我 谢谢 Control cntrl previously declared and populated Bitmap bmp new Bitmap cntrl Width cnt
  • 在 C++ 项目中使用 clang 作为库

    我正在尝试使用 clang 作为库 但我不确定如何链接 Makefile 中的文件 尝试以下位置的 ASTVisitor 代码 https clang llvm org docs RAVFrontendAction html 这是我的Mak
  • Vimeo 上传 API - 尝试删除票证时出现“无效状态”错误

    我按照官方 Vimeo Upload 文档一步步操作 可断点续传的 HTTP PUT 上传 但在最后一步 删除了上传链接 我总是收到 HTTP 500 无效状态 响应 什么使所有过程无效 我已经尝试了一切但没有成功 相关问题 Vimeo A
  • SSIS C# 脚本不兼容

    我最近接管了基于 SSIS ETL 的流程 由于一些许可问题 我不得不从 Data Tools 2013 升级到 2015 大部分项目都在升级中幸存下来并且运行良好 然而 在两个包中 我有一个非常简单的 C 方法 脚本转换 来解析一些导致一
  • 何时使用接口而不是抽象类,反之亦然?

    这可能是一个通用的 OOP 问题 我想根据接口和抽象类的用法对它们进行一般比较 什么时候需要使用接口 什么时候需要使用抽象类 我写了一篇关于此事的文章 抽象类和接口 总结 当我们谈论抽象类时 我们正在定义对象类型的特征 指定物体是什么 当我
  • AngularJS:循环 POST 请求并将每个索引传递到相关响应中

    我正在尝试使用 AngularJS 执行多个 http POST 请求 并且我需要创建一个成功完成请求的对象 如下所示 var params 1 2 3 url i done for i in params url dir params i
  • 为 StackPane 对象创建具有绝对坐标的路径过渡

    OrangeBlock是一个橙色块 里面有文字 它被实现为StackPane其中包含矩形顶部的文本 这种方法在StackPane 的文档 我已经放置了一个OrangeBlock在坐标 100 80 处 现在我正在尝试使其顺利移动到某个目标坐
  • 如何从远程 url 下载 mp3 文件?

    我将我的网站重定向到一个只有 mp3 文件正在流式传输的 URL 并且我希望将该文件下载到本地计算机 我怎样才能做到这一点 我已经搜索过 google 和 stacksoverflow 但这些解决方案对我不起作用 我找不到针对我的具体问题的