※ ChatGPTを利用し、要約された質問です(原文:PHPでWAVファイルをDL→保存する)
PHPでWAVファイルをDL→保存する
このQ&Aのポイント
PHPを使用してWAVファイルをダウンロードし、保存する方法について教えてください。
WAVファイルをダウンロードして保存する際に、音楽プレーヤーで再生できない問題が発生しています。
ダウンロードしたWAVファイルと元のファイルを比較した結果、保存されたファイルには一部の情報が欠落していることがわかりました。正常に保存するためにはどうすればよいでしょうか?
PHPでWAVファイルをダウンロード→保存できるようにしたいと思い
以下のプログラムを組みました。
$fpath = 'wav/music.wav'; // ファイルパス
$fname = 'music.wav'; // ファイル名
header('Content-Type: audio/x-wav');
header('Content-Length: '.filesize($fpath));
header('Content-Disposition: attachment; filename="'.$fname.'"');
echo file_get_contents($fpath);
ファイルのダウンロード、保存と出来たのですが
実際にファイルを開こうとすると音楽プレーヤーで再生出来ませんでした。
ダウンロードしたファイルと元のファイルのプロパティを見比べた所、
「概要」に表示されていた項目(ビットレート等)が消えていたので
正常に保存が出来ていないようです。ファイルサイズは同じでした。
どうすればWAVファイルが普通に保存できるでしょうか?
よろしくお願い致します。
お礼
回答有難う御座います! なんとか自己解決できました! header部分をHTMLタグ内に埋め込んだのが原因でした。 こんな初歩的なミスをしてしまうとは…^^;