2013-04-26 68 views
0

我试图做一个简单的PHP脚本,它的文本来自用户的输入,然后使用Mac的终端“说”功能(文本到speach)朗读课文说的功能。PHP - 执行从MAC外壳/终端

唯一的资源我已经能够找到其中专门讨论这是来自2003

一个非常简单的解决方案,主题是建议:

<html><body> 
    <form method="post"> 
    Say: <input type="text" name="text" size="40"> 
    <input type="submit"> 
    </form> 
    </body></html> 

    <?php 
     if (isset($_POST['text'])) { 
     exec('say "'.$_POST['text'].'"'); 
     } 
    ?> 

我一直在使用,而不是“高管”“系统”没有运气尝试。 我真的不知道如何解决这个问题。它可以是访问而不是代码?如何找出为什么它不起作用的任何帮助将是伟大的,谢谢。

+0

它只会玩运行PHP脚本而不是客户端PC上的服务器上的声音? – Dave 2013-04-26 15:26:57

+0

我希望它可以在客户端PC上播放。 – user2324390 2013-04-26 15:29:02

+0

php是一种服务器端编程语言。如果您在脚本中使用exec函数,则该命令在服务器中执行。你不能用php来做到这一点。尝试使用JavaScript有很多文本到语音库http://goo.gl/R5MCH。 – LuckyStarr 2013-04-26 15:38:47

回答

1

一个解决方案是使用命令说,允许以节省一个音频文件输出的-o选项。在link有一个bash脚本,它可以从文件文本创建一个mp3文件;读取适配脚本以从字符串中取出字符串非常简单。在你允许用户下载或用这个简单的代码 <embed height="50" width="100" src="example.mp3"> 与之前创建的MP3文件的路径替换example.mp3在网页上执行。

+0

这是say命令的[官方手册页](http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/say.1.html) – LuckyStarr 2013-04-26 16:07:56