Pergunta

Eu tenho um arquivo php lançar meu exe. o exe faz cout eo texto é impresso em html que é tudo muito bem. até que eu escrevo "someline \ n"; O \ n quebra a saída e eu só ver a última linha. Como faço para imprimir / eco texto / cordas que tem multilines neles?

A pasta atual tem \ n comentada e minha impressão de texto bem. Ele olha feio no console e quando eu ver fonte com o IE7 (embora eu procure primeiramente com FF) a fonte é dolorosa para olhar. Aqui está o meu php atual e 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;
}
Foi útil?

Solução

A partir http://php.net/exec :

Valores de retorno

A última linha do resultado do comando. Se você precisa executar um comando e ter todos os dados do comando passados ??sem qualquer interferência, use o passthru () função.

O exec () função só retorna a última linha de ouput, mas passthru () retornos todas de saída.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top