2011-06-17 125 views
1

我只想看看Telnet流中最後兩行是什麼的簡單方法。例如,如果你可以想象一個終端窗口,我只想輸入一個命令,敲回車,然後看看響應是什麼。到目前爲止,我可以執行命令,但是我在評估響應時遇到了問題。 stream_get_line不是返回兩行響應,而是返回流中的每一行。有沒有辦法「收聽」到Telnet流?

任何人都可以提出一個函數或可能更好的方式來寫它嗎?

$con = @pfsockopen("10.30.96.55", 23, $errno, $errstr, 30); 

fputs($con, "ipaddress get\r"); 

while (!feof($con)) { 
    $response = stream_get_line($con, 100, "\n"); 
} 

echo $response; 

這可能是我不完全瞭解stream_get_line();如果我在做一些愚蠢的事情,有人請幫助我。謝謝!

回答

1

經過fgets()的更多實驗後,我已經能夠達到預期的效果。

不是:

while (!feof($con)) { 
    $response = stream_get_line($con, 100, "\n"); 
} 

我使用:

while (($buffer = fgets($con, 5)) !== false) { 
    $total .= $buffer; 
} 
相關問題