звездочка — Как написать многострочный вывод в php?

Я хочу записать вывод команды в php файл. Но когда я открываю файл, пишется только одна строка вывода.

  $myfile = fopen("status1.txt", "a+");
$cmd="asterisk -rx 'sip show peers'|greo OK";

$test1=system($cmd);
fwrite($myfile, $test1);
fclose($myfile);

ВЫХОД

1004  /1004     (Unspecified)                            D                 0         OK
1005  /1005     (Unspecified)                            D   N             0         OK
1006  /1006     (Unspecified)                            D   N             0         OK
2501  /2501     (Unspecified)                            D                 0         OK
2502  /2502     (Unspecified)                            D   a             0         OK
2503  /2503     (Unspecified)                            D   a             0         OK
2504  /2504     (Unspecified)                            D                 0         OK

Но в файле написана только первая строка

0

Решение

Вы можете попробовать использовать функцию exec вместо системы

например

exec($cmd,scanme);
$scanme = implode("\n",$scanme);

exec (строка $ command [, массив &$ output [, int &$ return_var]])

Ваш случай:

  $myfile = fopen("status1.txt", "a+");
$cmd="asterisk -rx 'sip show peers'|greo OK";

exec($cmd,$test1);
$test1 = implode("\n",$test1);

fwrite($myfile, $test1);
fclose($myfile);
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector