2012-07-04 704 views
0

我在网站上有几个音乐目录。如何使用php播放mp3音乐?

我想要的是点击一个简单的按钮,并听取其中的一个音乐。

这是可能使用PHP?

+0

好问题.. – Ashwin

+3

你想让它在服务器或客户端上播放吗? – Maerlyn

+0

@Maerlyn在客户端。 –

回答

3

PHP是一种服务器端脚本,更多地用于数据处理和与数据库的交互。你要找的是客户端脚本,所以使用javascript或flash是播放MP3的更好方式。有很多免费的JS和Flash插件供您下载或安装在互联网上。

我个人最喜欢的是SoundManager2, http://www.schillmania.com/projects/soundmanager2/ 这是更多的开发类型的API,用于创建和定制您自己的应用程序。它是迄今为止它的小巧优化版本中更灵活的音频播放器之一。

1

您可以使用HTML5:

var snd = new Audio("file.wav"); // buffers automatically when created 
snd.play(); 

然后可以使用onclicks等,并触发snd.play()

但看你的问题,我认为HTML5没有按不支持mp3 ...

+0

它是浏览器特定的(甚至可能是平台特定的),是否可以播放mp3。 – PeeHaa

0

媒体处理由浏览器管理。要做到这一点,最好的办法是从你的PHP与嵌入式音频放出来的HTML页面,请参阅: -

http://www.w3schools.com/html/html_sounds.asp

没有在HTML正确嵌入其中,浏览器将把它们作为下载,然后文件这取决于每个浏览器使用什么助手来播放它们,或者它们是否只保存到磁盘。

+2

朋友不要让朋友使用w3schools。 http://w3fools.com/ –

0

当然,这仅仅使用PHP是不可能的(因为PHP是服务器端,我认为你想玩客户端)。然而,无论是JavaScript/Flash这可以很容易地完成。

如果你想变得很酷(并且不必支持较老的用户代理),你可以使用html5的原生audio

我玩过AudioManager 2,它试图使用JS并回退到闪存。

+1

Soundmanager太好了......我还创建了一个不错的演示,如果有人想检查http://www.thetutlage.com/post=TUT142 –

0

确定用PHP直接播放歌曲是不正确的方式,或者你甚至不会找到一个安全的方式来做到这一点,网上有一些非常好的选择,我的意思是像jwPlayer的jquery插件,你可以搜索更多在谷歌上。这可以帮助您使用播放列表设置完整的音频播放器。但是,我不确定你在想什么,我已经创建了一个简单的功能,可以帮助你播放歌曲。

<?php 

    function getUploadedFiles($directory){ 
    $folder = opendir($directory); 
    while ($file = readdir($folder)) { 
    if($file !== '.' && $file !== '..') 
    { 
     $filename = $directory.'/'.$file; 
     $file_array[] = array('filename' => $file); 
    } 
} 
return $file_array; 
    } 

$music = getUploadedFiles('music'); 

foreach($music as $value) 
{ 
    echo '<a href="music/'.$value['filename'].'">'.$value['filename'].'</a>'; 
} 

    ?> 

功能将主要取决于用户的机器里面安装了浏览器或音乐播放器,所以它是永远正确的信任哪些用户将不得不+你的文件路径将是可见的。

我仍然建议寻找一个稳定的jQuery html5插件,它支持Flash作为后备,您可以使用播放列表轻松设置完整的音频播放器。