Files
tmgsl/music.php
2026-02-12 14:43:36 +00:00

46 lines
1.1 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
// music.php - 纯音频播放无HTML页面
// 允许跨域请求(可选)
header('Access-Control-Allow-Origin: *');
// 音频文件目录
$musicDir = 'music/';
// 支持的音频格式
$allowedExtensions = ['mp3', 'ogg', 'wav'];
// 获取目录下所有音频文件
$musicFiles = [];
foreach ($allowedExtensions as $ext) {
$files = glob($musicDir . '*.' . $ext);
$musicFiles = array_merge($musicFiles, $files);
}
// 随机选择一首歌
if (!empty($musicFiles)) {
$randomMusic = $musicFiles[array_rand($musicFiles)];
// 获取文件扩展名
$extension = pathinfo($randomMusic, PATHINFO_EXTENSION);
// 设置正确的Content-Type
$mimeTypes = [
'mp3' => 'audio/mpeg',
'ogg' => 'audio/ogg',
'wav' => 'audio/wav'
];
$contentType = $mimeTypes[$extension] ?? 'audio/mpeg';
header('Content-Type: ' . $contentType);
// 输出文件
readfile($randomMusic);
} else {
// 没有音频文件时返回静音音频
header('Content-Type: audio/mpeg');
// 这里可以返回一个静音的MP3文件
// 或者输出错误信息
echo 'No music files found';
}
?>