我需要自动化我们系统的几个功能,不幸的是没有API,只有telnet命令。
起初我遇到了一些奇怪的问题,因为它试图登录得太快,所以我在连接和输入用户名和密码之间添加了额外的睡眠(2)。
现在的问题是:在执行一个只输出一行的命令之后,下一个命令(多行输出)将系统挂起2分钟15秒(在eclipse调试模式下),在浏览器加载时挂起1分钟20秒(仅在我将超时设置强制为180秒…)。
它发生在类的DoCommand()函数中:$r.=fread($this->fp,1000)。
这里有一个指向我试图执行的脚本的pastebin链接,以及我最终得到的输出(通过修改来保护信息)
有什么办法可以调试这个原因吗?到目前为止,我的项目甚至不需要调试器:(
理想情况下,我希望在5秒内完成在telnet上执行2-3个命令。。不是更多。
(因为一旦我们解决了这个问题,我将添加功能来断开用户连接,等等…)。
我希望使用fsockopen使用这种PHP的更有经验的人可以帮助:)