문제
내 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 () 함수는 OUPUT의 마지막 줄만 리턴하지만 Passthru () 보고 모두 산출.
제휴하지 않습니다 StackOverflow