我想從PHP傳遞一個字符串到C++,我設法弄清楚如何傳遞數字,但它不適用於字母。下面是我有一個PHP的發送PHP字符串到C++
<?php
$r = 5;
$s = 12;
$x= 3;
$y= 4;
$q= "Hello World";
$c_output=`project1.exe $r $s $x $y $q`; // pass in the value to the c++ prog
echo "<pre>$c_output</pre>"; //received the sum
//modify the value in php and output
echo "output from C++ programm is" . ($c_output + 1);
?>
X,Y和q工作這將變量R,S,在C++ PROGRAMM PROJECT1.EXE和它的作品,但問題是,這是行不通的爲字符串變量$ q。
下面是我在我的C++ PROGRAMM的代碼,很簡單:
#include<iostream>
#include<cstdlib>
#include<string>
using namespace std;
int main(int in, char* argv[]) {
int val[2];
for(int i = 1; i < in; i++) { // retrieve the value from php
val[i-1] = atoi(argv[i]);
}
double r = val[0];
double s = val[1];
double x = val[2];
double y = val[3];
double q = val[4]; // here's the problem, as soon as i try to define val[4] as a string or char, it screws up
cout << r;
cout <<s;
cout << x;
cout << y;
cout << q;
// will output to php
return 0;
}
它的工作原理,但對於字符串「Hello World」這是我穿過的PHP $ Q不給我字符串返回(我知道它被定義爲double,但只要我嘗試將其更改爲字符串或char變量,代碼就不會編譯)。
請向我解釋我如何解決此問題,以便$ q可以作爲字符串處理。僅供參考,我是編程的新手(6個月)。
我認爲我過於複雜,如果我只是有一個PHP變量是一個字符串,只是想傳遞給C++的字符串?就像在HTML表單中輸入「John」一樣,我在PHP中創建HTML表單= $ q,然後將$ q傳遞給C++,但我希望$ q只是一個字符串,我將如何聲明?我試着添加你的代碼,但它似乎給我無窮無盡。 – 2012-04-09 06:11:06
檢查編輯.. – SuperSaiyan 2012-04-09 16:57:53