문제

내 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;
}
도움이 되었습니까?

해결책

에서 http://php.net/exec:

반환 값

명령 결과에서 마지막 줄. 명령을 실행해야하고 간섭없이 명령의 모든 데이터를 직접 전달하는 경우 사용하십시오. Passthru () 기능.

그만큼 exec () 함수는 OUPUT의 마지막 줄만 리턴하지만 Passthru () 보고 모두 산출.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top