2014-01-17 22 views
0

我正尝试从php站点调用单声道。作为一个简单的例子来看看它是如何实现的,我有一个简单的C#控制台应用程序,它只写了“Hello World”。在我的PHP端点,我这样做:从php web服务调用单声道命令

$command = "/opt/mono-3.2.1/bin/mono /opt/test/HelloWorld.exe"; 
    shell_exec($command); 

我也试过exec($命令)。当我点击这个端点时,我看不到任何东西印在控制台上。这是我认为应该发生的,但不知道,因为我从来没有做过这样的事情,或曾经使用过单声道。我知道如果我去终端,并做

mono HelloWorld.exe 

然后我在终端窗口中得到“Hello World”。但是从Web服务中,我不会引发错误,但我没有看到任何地方发布或打印的任何内容。

我是否正确调用单声道?终端窗口应该打开并打印“Hello World”?提前致谢。

+0

你打开PHP的错误报告和错误显示? – knittl

+0

@knittl没有,我该怎么做? – Crystal

+0

'error_reporting(〜0);'在您的脚本中,''php.ini'文件中的'display_errors On' – knittl

回答

0

您是否明确显示命令的输出?你有没有尝试这样的:

$command = "/opt/mono-3.2.1/bin/mono /opt/test/HelloWorld.exe"; 
$output = shell_exec($command); 
echo $output; 

你尝试所有的输出从单声道重定向:

$command = "/opt/mono-3.2.1/bin/mono /opt/test/HelloWorld.exe 2>&1"

是否运行PHP的权限,遍历并打开您的单应用程序路径的用户帐户(包括/opt/mono-3.2.1/bin/mono/opt/test/HelloWorld.exe)?

不,在您的PHP脚本中执行单声道时不应打开终端窗口。