PHPを使用してTelnetとSendコマンドを接続してテキストファイルへの書き込みを行う方法

StackOverflow https://stackoverflow.com/questions/6094790

  •  09-09-2020
  •  | 
  •  

質問

ポートにTelnetを送って送信コマンドを送信し、PHPを使用して出力をTXTファイルに書き込む必要があります。

このフォーラムには同じ質問名があります。 PHP を使用したTelnet接続ですが、解決策があります。リンクとソリューションリンクが開かれていないので、もう一度質問をしなければならない。

また、下のコードを試してみてください。適切な出力をテキストファイルに保存します。符号:

<?php
$fp = fsockopen("localhost", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: localhost\r\n";
    $out .= "Connection: Close\r\n\r\n";
    fwrite($fp, $out);
    while (!feof($fp)) {
        echo fgets($fp, 128);
    }
    fclose($fp);
}
?>
.

だから、問題を解決するのを手伝ってください。ローカルホストポート80にTelnetとコマンドの取得/ http / 1.1を送信し、出力をテキストファイルに書き込む?

役に立ちましたか?

解決

簡単な追加で、スクリプトの例は出力をファイルに書き込むことができます。

<?php
$fp = fsockopen("localhost", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: localhost\r\n";
    $out .= "Connection: Close\r\n\r\n";
    fwrite($fp, $out);

    $output = '';
    while (!feof($fp)) {
        $output .= fgets($fp, 128);
    }

    fclose($fp);
    file_put_contents( 'output.txt', $output );
}
.

それでは、私はEDUARD7に同意します。手動でリクエストをしないように簡単になり、PHPをあなたのためにそれを解決させましょう:

<?php
// This is much easier, I imagine?
file_put_contents( 'output.txt', file_get_contents( 'http://localhost' ) );
.

他のヒント

本当にTelnetでこれをやりたいですか?

echo file_get_contents("http://127.0.0.1:80");
.

または要求をカスタマイズしたい場合は、curl - http://を使用できます。php.net/manual/en/book.curl.php

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top