質問
iにはexeを起動するphpファイルがあります。 exeはcoutを実行し、テキストはHTMLで印刷されます。 " someline \ n"と書くまで\ nは出力を中断し、最後の行のみが表示されます。複数行のテキスト/文字列を印刷/エコーするにはどうすればよいですか?
現在の貼り付けは\ nコメントアウトされており、テキストは正常に印刷されます。コンソールでは見苦しく、IE7でソースを表示すると(主にFFでブラウズしますが)、ソースを見るのが苦痛です。これが私の現在のphpおよびcppファイルです
<html>
<head>
</head>
<body>
<?php
echo( exec('c:/path/to/exe/launchMe.exe hey lol hi') );
?>
</body>
</html>
cpp
#include <string>
#include <iostream>
#include <sstream>
using namespace std;
const string htmlLine(string s)
{
s+= "<br />";
// s += "\n";
return s;
}
int main(int argc, char *argv[])
{
stringstream s;
s << argc;
cout << htmlLine("woot") << htmlLine(s.str());
for (int i=0; i<argc; ++i)
{
s.str("");
s << i << " = " << argv[i];
cout << htmlLine(s.str());
}
return 0;
}
解決
戻り値
コマンドの結果の最後の行。コマンドを実行する必要があり、コマンドからのすべてのデータが干渉なしで直接渡される場合、 passthru()関数。
exec()関数は、出力の最後の行のみを返しますが、 passthru()は all 出力を返します。
所属していません StackOverflow