如何解决如何使用php连接telnet和发送命令以及将输出写入文本文件
|| 我需要使用telnet到端口并发送命令,然后使用PHP将输出写入txt文件。我该怎么做? 在这个论坛中,使用PHP具有相同的问题名称telnet连接,但是它们具有解决方案链接,而解决方案链接未打开,因此我必须再次提出问题。 我也尝试从php站点下面的代码,但是它没有将正确的输出保存到文本文件中。<?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);
}
?>
因此,请帮助我解决问题。我如何telnet到localhost端口80并发送命令GET / 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 );
}
再说一次,我同意爱德华7。不用手动执行请求更容易,而让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/zh/book.curl.php
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。