我有問題11300在端口上本地主機(127.0.0.1)通過PHP使用telnet 11300
我以前沒有使用這種通過PHP在本地主機(127.0.0.1)通過端口使用telnet,這樣有利於會很好。
下面是代碼:
function sendToSocket($host, $port, $out){
if(!function_exists('fsockopen'))
return 'f() doesnt exist !';
$response = "";
$fp = fsockopen($host, $port, $errno, $errstr);
if(!$fp){
$response .= "$errstr ($errno)<br/>";
}else{
fwrite($fp, $out);
$response .= fgets($fp);
fclose($fp);
}
if($response)
return $response;
else
return "ERROR";
}
echo sendToSocket('127.0.0.1', 11300, 'stats');
我得到了 「錯誤」,這就是意味着,與fgets($ FP);不適合我。
當鍵入命令行命令:telnet 127.0.0.1 11300萬事OK,所以後來我可以爲了得到結果鍵入命令「統計」。我正在使用Ubuntu。
錯誤在哪裏? 如何在命令行中得到類似結果的結果?
也許你需要發送'\ N'或類似實際上告訴你已經取得了一些輸入,另一端的東西嗎? – hakre
我改正爲: echo sendToSocket('127.0.0.1',11300,「stats \ r \ n」); 它的工作,一切都很好,非常感謝。 – Alex
請在下面添加它作爲答案。然後你可以選擇它作爲解決這個問題的答案。謝謝! – hakre