如何让PHP输出声音(哔声)?
这个Python代码在PHP中怎么写?
import winsound
winsound.Beep(537, 2000)
7 个回答
2
我试了Tor Valamo建议的方法,但声音还是没法播放。
当我使用下面的代码时,我的屏幕上只显示了chr(7)的表示,但没有声音:
system('cmd /k go.bat')
如果我使用下面的代码,就什么都没有了:
exec('cmd /k go.bat')
所以我改用了以下任意一种:
exec('start /MIN go.bat')
exec('cmd.exe /k start /MIN go.bat')
唯一的副作用是cmd.exe会闪一下,所以使用/MIN可以确保它只在任务栏上闪烁。
3
这个方法使用的是标准的内置哔声。(听起来更像是“咚”的声音)
在任何平台上都可以使用。
非常简单,只需复制粘贴代码就可以了。
function beep()
{
fprintf ( STDOUT, "%s", "\x07" );
}
9
PHP主要是在网络服务器上使用的,所以在那儿发出哔哔声有什么用呢?而且你不能通过PHP在用户的电脑上发出声音,因为PHP会被转换成HTML,而HTML没有这种功能。
如果你想使用Win32的功能,可以看看这个链接:如何从PHP调用Win32 API? 还有这个链接:Win32发声函数
不过,如果你想在用户的浏览器中发出声音,最好是直接把音频嵌入到HTML里。
补充一下:还有一种方法可以发出哔哔声:
<?php
function beep ($int_beeps = 1) {
for ($i = 0; $i < $int_beeps; $i++): $string_beeps .= "\x07"; endfor;
isset ($_SERVER['SERVER_PROTOCOL']) ? false : print $string_beeps;
}
?>
这个在浏览器中运行时不会有任何反应,但如果在命令行中运行,它会发出$int_beeps次可听的哔哔声。这在Windows、Unix等系统上都应该可以工作。