Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从我自己的网站获取MP3的长度?_Php_Javascript_Mysql_Mp3 - Fatal编程技术网

Php 如何从我自己的网站获取MP3的长度?

Php 如何从我自己的网站获取MP3的长度?,php,javascript,mysql,mp3,Php,Javascript,Mysql,Mp3,我有自己的个人网站,我上传了大约5000个mp3。我真正想做的就是能够查看mp3文件的位置,并获得文件的曲目长度,最好是在几秒钟内,但在这一点上,任何事情都会很好。我只是在寻找一些简单、干净、有效的方法来获取这一条信息。我环顾四周,发现的所有东西都能收集到各种各样的信息,但我没能找到符合我要求的东西。如果你们中有人知道什么可以帮忙的,请告诉我 顺便说一句,我只是一个业余爱好者,但我对PHP、MySQL和Javascript有一些经验。我更喜欢用这些语言中的一种,但如果它足够简单,它可以用任何语言

我有自己的个人网站,我上传了大约5000个mp3。我真正想做的就是能够查看mp3文件的位置,并获得文件的曲目长度,最好是在几秒钟内,但在这一点上,任何事情都会很好。我只是在寻找一些简单、干净、有效的方法来获取这一条信息。我环顾四周,发现的所有东西都能收集到各种各样的信息,但我没能找到符合我要求的东西。如果你们中有人知道什么可以帮忙的,请告诉我

顺便说一句,我只是一个业余爱好者,但我对PHP、MySQL和Javascript有一些经验。我更喜欢用这些语言中的一种,但如果它足够简单,它可以用任何语言,我会弄明白的

谢谢

这里有一个函数:

代码:

<?php
$f = 'somefile.mp3';
$m = new mp3file($f);
$a = $m->get_metadata();

if ($a['Encoding']=='Unknown')
    echo "?";
else if ($a['Encoding']=='VBR')
    print_r($a);
else if ($a['Encoding']=='CBR')
    print_r($a);
unset($a);
?>
Array
(
    [Filesize] => 5108648
    [Encoding] => CBR
    [MPEG version] => 11
    [Layer Description] => 01
    [Protection Bit] => 1
    [Bitrate Index] => 1010
    [Sampling Freq Idx] => 00
    [Padding Bit] => 0
    [Private Bit] => 0
    [Channel Mode] => 01
    [Mode Extension] => 00
    [Copyright] => 0
    [Original Media] => 0
    [Emphasis] => 0
    [Bitrate] => 160
    [Sampling Rate] => 44100
    [Frame Size] => 523
    [Length] => 252
    [Length mm:ss] => 4:12
)
注意
[长度mm:ss]=>4:12
部分

另一种解决方案是使用外部工具,如或与内置功能一起使用

来源:


希望这有帮助

你检查过这个了吗:
此外,如果您知道mp3文件的比特率,您可以通过获取mp3文件的文件大小,将其转换为位(或千位),然后将大小除以比特率来计算它。这会给你以秒为单位的时间。

在来这里寻求帮助之前,我已经试过了。当我使用它时,我得到的只是:数组([Filesize]=>2661030[Encoding]=>VBR),其中[Filesize]值根据我输入的歌曲名而变化。