Как заставить PHP выводить звук (гудок)?
Что такое PHP-версия этого кода на Python?
import winsound
winsound.Beep(537, 2000)
7 ответов
php в основном используется на веб-серверах, так что толку там, и вы не можете подать звуковой сигнал на компьютере пользователя через php, так как php переведен на HTML, который не имеет такого метода.
Если вы хотите иметь вызовы Win32, посмотрите: Как мне сделать вызовы Win32 API из PHP? также звуковая функция 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 times. Это должно работать на Windows, Unix и т. Д.
Работает со стандартным / встроенным звуковым сигналом. (больше похоже на звук "doink")
Также работает на любой платформе.
Супер простой код копипаста.
function beep()
{
fprintf ( STDOUT, "%s", "\x07" );
}
Я попробовал то, что предложил 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 гарантирует, что он мигает только на панели задач.
Обновление: не бери в голову, я думал, что ты просто хотел "гудок", а не ТОН.
Старый пост, не отвечая на вопрос:
Вам нужно сделать файл.bat, так что: Откройте cmd
copy con go.bat [Enter]
@echo off [Enter]
echo [Ctrl+G] [Enter]
[Ctrl+Z] [Enter]
Это выглядит так:
C:\DEV\test>copy con go.bat
@echo off
echo ^G
^Z
1 file(s) copied.
Теперь вы просто вызываете go.bat из PHP через exec() или system() или что-то еще. Вы должны сделать go.bat через cmd, чтобы символ Ctrl+G был правильным.
ЭЗ способ:
вы можете получить помощь от html:
echo "<audio src='http://freesoundeffect.net/sites/default/files/incorrect-answer--6-sound-effect-99679566.mp3' autoplay ></audio>";
этот код воспроизводит звуковой сигнал в фоновом режиме, и вы можете изменить файл .mp3
это генерирует звуковой сигнал, но в отличие от Winsound не позволяет указатьfrequency, duration
..
function cli_beep()
{
if (is_callable('ncurses_beep')) {
ncurses_beep();
ncurses_flash();
} else {
fprintf(STDOUT, "%s", "\x07");
}
}
Конечно, люди пишут приложения с графическим интерфейсом на PHP - для этого и нужен wxPHP.
Установите mpg321 - крошечное звуковое приложение:
exec("mpg321 --quiet --gain 10 /path/to/beep.mp3");