ssh2.shell:// ssh2.exec:// ssh2.tunnel:// ssh2.sftp:// ssh2.scp:// PHP 4.3.0 及以上版本 (PECL)
Note: 该封装器默认没有启用 要使用 ssh2.*:// 封装器,必须安装 » SSH2 扩展。可以到 » PECL 下载。
除了接受传统 URI 的登录信息外,ssh2 封装器也重用主机 URL 的一部分的连接资源。
Example#1 为活动连接打开流
<?php
$session = ssh2_connect('example.com', 22);
ssh2_auth_pubkey_file($session, 'username', '/home/username/.ssh/id_rsa.pub',
'/home/username/.ssh/id_rsa', 'secret');
$stream = fopen("ssh2.tunnel://$session/remote.example.com:1234", 'r');
?>
属性 | ssh2.shell | ssh2.exec | ssh2.tunnel | ssh2.sftp | ssh2.scp |
---|---|---|---|---|---|
受限于 allow_url_fopen。 | 是 | 是 | 是 | 是 | 是 |
允许读取 | 是 | 是 | 是 | 是 | 是 |
允许写入 | 是 | 是 | 是 | 是 | 否 |
允许附加 | 否 | 否 | 否 | 是 (若服务器支持) | 否 |
允许同时读写 | 是 | 是 | 是 | 是 | 否 |
支持 stat() | 否 | 否 | 否 | 是 | 否 |
支持 unlink() | 否 | 否 | 否 | 是 | 否 |
支持 rename() | 否 | 否 | 否 | 是 | 否 |
支持 mkdir() | 否 | 否 | 否 | 是 | 否 |
支持 rmdir() | 否 | 否 | 否 | 是 | 否 |
名称 | 用法 | 默认 |
---|---|---|
session | 可重用预连接的 ssh2 连接资源 | |
sftp | 可重用预分配的 sftp 连接资源 | |
methods | 要使用的 Key exchange, hostkey, cipher, compression, 和 MAC 方法 | |
callbacks | ||
username | 连接的用户名 | |
password | 密码认证时需要的密码 | |
pubkey_file | 认证需要的 public key 文件名 | |
privkey_file | 认证需要的 private key 文件名 | |
env | 要设置的环境变量的数组 | |
term | 当分配一个控制台时使用的终端类型 | |
term_width | 当分配一个控制台时终端的宽度 | |
term_height | 当分配一个控制台时终端的高度 | |
term_units | 与 term_width 和 term_height 一同使用的单元 | SSH2_TERM_UNIT_CHARS |