2014-01-24 44 views

回答

0

它們是ANSI控制代碼。他們的目的是控制文本和顏色的格式,而不是。要正確解碼它們,你需要一個終端仿真器。 phpseclib有一個叫File_ANSI:

http://phpseclib.sourceforge.net/ssh/examples.html#top

這裏是你的代碼重寫,以使用它:

$ssh = new Net_SSH2($strServerIPAddress); 
$ansi = new File_ANSI(); 
if(!$ssh->login($strServerUsername, $strServerPassword)) 
die("error"); 
$ssh->write(" service httpd reload\n"); 
$ansi->appendString($ssh->read("[[email protected]$strServerName ~]#")); 
echo $ansi->getScreen(); 
$ssh->disconnect(); 
+0

謝謝,我如何才能去掉所有的控制字符,什麼不可以,所以輸出只是普通的? – user3232849

+0

我鏈接到的地址的URL的底部。 'htmlspecialchars_decode(strip_tags($ ansi-> getScreen()))' – neubert

+0

真棒,我看到了,但只是想確保,謝謝:) – user3232849