Я использую следующий код для взаимодействия с сеансом S SH. Все в порядке до последней строчки кода.
Я получаю хорошие снимки экрана на моей веб-странице до последнего метода getScreen (), когда он выдает следующие ошибки. Я скажу, что после моей последней команды окно сеансов s sh (по крайней мере, в замазке) переходит в своего рода живой режим, почти как хвостовая команда, и окно будет заполнять информацию по мере ее поступления в s sh сеанс. Кажется, это предопределенный размер?
В идеале, я хочу передать то, что попадает в это окно, в файл, это моя конечная цель, но сейчас было бы полезно просто показать это на экране .
PHP Notice: Undefined offset: 79 in E:\jackwad\IIS\portal\File\ANSI.php on line 556
PHP Notice: Trying to get property 'foreground' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 499
PHP Notice: Trying to get property 'foreground' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 500
PHP Notice: Trying to get property 'foreground' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 501
PHP Notice: Trying to get property 'background' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 507
PHP Notice: Trying to get property 'background' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 508
PHP Notice: Trying to get property 'background' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 509
PHP Notice: Trying to get property 'bold' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 515
PHP Notice: Trying to get property 'underline' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 522
PHP Notice: Trying to get property 'blink' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 529
PHP Notice: Undefined offset: 79 in E:\jackwad\IIS\portal\File\ANSI.php on line 558
PHP Notice: Trying to get property 'foreground' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 499
PHP Notice: Trying to get property 'foreground' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 503
PHP Notice: Trying to get property 'background' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 507
PHP Notice: Trying to get property 'background' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 511
PHP Notice: Trying to get property 'bold' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 515
PHP Notice: Trying to get property 'underline' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 522
PHP Notice: Trying to get property 'blink' of non-object in E:\jackwad\IIS\portal\File\ANSI.php on line 529
Мой код:
include('Net/SSH2.php');
include('File/ANSI.php');
$ssh = new Net_SSH2('1xx.xx.xx.xx');
if (!$ssh->login('xxxxx', 'xxxxxxxx')) {
exit('Login Failed');
}
$ansi = new File_ANSI();
$ansi->appendString($ssh->read('username@username:~$'));
$ssh->write("\n");
$ssh->setTimeout(2);
$ansi->appendString($ssh->read());
echo $ansi->getScreen();
$ssh->write("sat\n");
$ssh->setTimeout(2);
$ansi->appendString($ssh->read());
echo $ansi->getScreen();
$ssh->write("W2KTT\n");
$ssh->setTimeout(2);
$ansi->appendString($ssh->read());
echo $ansi->getScreen();
$ssh->write("some text 102\n");
$ssh->setTimeout(5);
$ansi->appendString($ssh->read());
$ansi->getScreen(); //this is the problem line
ANSI. php
500 - function _getScreen()
501 - {
502 - $output = '';
503 - $last_attr = $this->base_attr_cell;
504 - for ($i = 0; $i <= $this->max_y; $i++) {
505 - for ($j = 0; $j <= $this->max_x; $j++) {
506 - $cur_attr = $this->attrs[$i][$j];
507 - $output.= $this->_processCoordinate($last_attr, $cur_attr, isset($this->screen[$i][$j]) ? $this->screen[$i][$j] : '');
508 - $last_attr = $this->attrs[$i][$j];
509 - }
510 - $output.= "\r\n";
511 - }
512 - $output = substr($output, 0, -2);
513 - // close any remaining open tags
514 - $output.= $this->_processCoordinate($last_attr, $this->base_attr_cell, '');
515 - return rtrim($output);
516 - }