我想运行一个调用远程服务器上的可执行cpp文件的PHP脚本。
我试过如下:
1.处理cpp文件
// function example
#include <iostream>
using namespace std;
int addition (int a, int b)
{
int r;
r=a+b;
return r;
}
int main ()
{
int z;
z = addition (5,3);
cout << "The result is " << z;
return z;
}
生成其.exe文件并将其放入服务器的文件夹(test.exe)
第二步: 创建了一个php脚本,使用'shell_exec'
调用exe文件<?php
if (function_exists('shell_exec')){
echo "Enabled";
} else {
echo "Disabled";
}
$file = 'test.exe';
if (!file_exists($file)) echo 'File does not exists';
$out= shell_exec($file);
//exec($file, $out);
echo 'ouput is:: ' .$out;?>
此外,我已将此PHP文件放在远程服务器上,并尝试在浏览器中调用PHP脚本。但它显示错误Warning: shell_exec() [function.shell-exec]: Unable to execute 'test.exe'
。
我想回应“ouput is :: 8”。
请帮助验证。
答案 0 :(得分:1)
使用:
exec("./test.exe", $out);
请注意$out
将保留输出
请记住shell_exec
将所有输出流作为字符串返回,但exec
返回输出的最后一行。