用php将mp3文件从URL复制到服务器,没有声音?

用php将mp3文件从URL复制到服务器,没有声音?,php,audio,upload,mp3,server,Php,Audio,Upload,Mp3,Server,我正试图将一个mp3文件从一个网站http…./filename.mp3保存到我的服务器。使用以下php代码,我从ajax接收$url中的url。这是我的密码: $url = $_POST['data']; $filename = substr($url, strrpos($url, '/') + 1); $directory = './fileuploads/tmp/'; $data = file_get_contents($url); $file = fopen($directory.$

我正试图将一个mp3文件从一个网站http…./filename.mp3保存到我的服务器。使用以下php代码,我从ajax接收$url中的url。这是我的密码:

$url = $_POST['data'];
$filename = substr($url, strrpos($url, '/') + 1);

$directory = './fileuploads/tmp/';

$data = file_get_contents($url);
$file = fopen($directory.$filename, "w+");
fwrite($file, $data);
fclose($file);

它工作正常,但我服务器上的新mp3文件是空的。它不播放任何声音。你们怎么解决这样的问题?请尽量简单。致以最诚挚的问候

试着阅读curl,并用它来实现下载mp3的功能:您是否进行过任何基本调试,如echo strlen$data,以查看是否确实收到了任何内容?你只是假设你的url总是正确的,http请求永远不会失败,甚至假设url允许自己被刮取。文件创建成功后,在代码中进行一些错误检查以查看问题是什么,这就是空的。您可能无法从远程服务器上的文件中获取任何数据。但是你在这里的代码仍然会创建一个空白文件。如果您进行一些错误检查,您可以找到问题所在,很可能您没有从原始文件中获取任何数据。