php Echo /печать многострочной строки?
Вопрос
у меня есть php-файл, запускающий мой exe-файл.exe выполняет cout, и текст печатается в html, и все в порядке.пока я не напишу "someline \ n"; прерывает вывод, и я вижу только последнюю строку.Как мне напечатать / echo text / строки, содержащие многострочный текст?
Текущая вставка закомментирована, и мой текст печатается нормально.В консоли это выглядит некрасиво, и когда я просматриваю исходный код с помощью 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;
}
Решение
Возвращаемые Значения
Последняя строка из результата выполнения команды.Если вам нужно выполнить команду и передать все данные из команды напрямую обратно без каких-либо помех, используйте пасстру() функция.
В exec() функция возвращает только последнюю строку вывода, но пасстру() ВОЗВРАТ ВСЕ результат.