题
我需要通过从PHP到C ++的值。我想我可以用PHP的passthru()
功能做。
然后我想C ++做的东西的值,并将结果返回给PHP。
这是位我不能工作了,没有人知道如何从C ++数据传递给PHP?
因为我想这会慢下来我宁可不使用中间文件。
解决方案
您可以有你的C ++应用程序的输出发送到标准输出,然后用PHP的反引号时,例如
$output=`myapp $myinputparams`;
其他提示
哇非常感谢到钶&保罗迪克森。
现在我可以运行PHP来调用C ++ THN值传递回PHP〜=)
下面我提供样本CPP和PHP为它:
作为相加的输入的简单程序:强>
<强> a.cpp(A.EXE):强>
#include<iostream>
#include<cstdlib>
using namespace std;
int main(int argc, char* argv[]) {
int val[2];
for(int i = 1; i < argc; i++) { // retrieve the value from php
val[i-1] = atoi(argv[i]);
}
int total = val[0] + val[1]; // sum up
cout << total; // std::cout will output to php
return 0;
}
<强> sample.php:强>
<?php
$a = 2;
$b = 3;
$c_output=`a.exe $a $b`; // pass in the two value to the c++ prog
echo "<pre>$c_output</pre>"; //received the sum
echo "Output: " . ($output + 1); //modify the value in php and output
?>
<强>输出:强>
5
Output: 6
这篇文章关于PHP扩展可能有助于封装C ++类。
编辑:在其他的答案所有的解决方案变得非常简单,但不够灵活。这一切都取决于你所需要的。
不隶属于 StackOverflow