与ssh2_connect()断开连接

19

我使用ssh2_connect通过ssh2连接到一个服务器,但是在manpages手册中没有找到关闭连接的方法。

我不想等待脚本执行完毕再断开连接。

我能使用fclose吗?这听起来不太对...


我不知道答案,但是从文档中得到的信息是fclose()应该与ssh2_exec()ssh2_shell()调用结合使用,但我不认为它适用于ssh2_connect() - Alix Axel
3个回答

25

只需使用unset($connection)ssh2_exec($connection, 'exit');来关闭连接变量即可。

为了更加令人信服,你还可以执行以下操作!

ssh2_exec($connection, 'exit');
unset($connection);

+1пјҢеҸӘжңүеңЁssh2_exec()дёҚжҳҜиө„жәҗпјҲжҲ–иҝ”еӣһfalseпјүж—¶жүҚиғҪжү§иЎҢunset()гҖӮ - Alix Axel
2
或者:ssh2_exec($connection,'exit')或unset($connection);应该可以。 - Alix Axel
1
ssh2_exec($conn, 'exit')ssh2_exec($conn, 'logout') 不会 终止会话。它们只是从用于执行命令的临时 shell 中退出。SSH 会话仍然存在。 - Jesse

1

-4

ssh2_exec('logout') 应该会结束您的会话...


在允许执行命令的情况下,我想要终止TCPIP而不是使用协议,因为我可能会遇到“警告:ssh2_exec() [function.ssh2-exec]:无法请求远程主机上的命令执行”的问题。 - Incognito
system('kill -9 ' . getmypid()),尽管看起来很丑,但在这种情况下是有效的。 - Aaron Miller

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接