• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • ftp_ssl_connect()

    (PHP 4 >= 4.3.0, PHP 5, PHP 7)

    打开 SSL-FTP 连接

    说明

    ftp_ssl_connect(string $host[,int $port= 21[,int $timeout= 90]]): resource

    ftp_ssl_connect()显式的打开一个到$host的安全 FTP 连接(SSL-FTP)。即使服务器未配置 SSL-FTP,或者服务器的证书无效,ftp_ssl_connect()函数也会成功的建立到服务器的连接。直到调用ftp_login()函数的时候,客户端才会发送对应的 AUTH FTP 命令,此时,如果服务器未配置 SSL-FTP 或者整数无效,ftp_login()函数会失败。

    Note:为何本函数有可能不存在?

    只有 PHP 构建时同时包含了 ftp 模块和OpenSSL模块时,ftp_ssl_connect()函数才可用。也就是说,在 Windows 平台上,官方发布的 PHP 构建中本函数不可用。如果需要在 Windows 平台使用本函数,需要自行编译 PHP。

    Note:

    ftp_ssl_connect()不是用来连接 sFTP 服务的。要在 PHP 中使用 sFTP,请参见ssh2_sftp()。

    参数

    $host

    FTP 服务器地址。此参数末尾不可以有斜线,开头也不可以有ftp://

    $port

    要连接的端口。如果省略此参数或设置为 0,将使用 FTP 默认端口 21。

    $timeout

    此参数设置所有后续网络操作的超时时长。如果省略,默认值为 90 秒。可以使用ftp_set_option()和ftp_get_option()函数随时读取或设置超时时长。

    返回值

    操作成功返回 SSL-FTP 流,操作失败返回FALSE

    更新日志

    版本说明
    5.2.2以前版本中,如果无法使用 SSL 连接,将会返回一个非 SSL 的连接,在 5.2.2 版本中修改为返回FALSE

    范例

    ftp_ssl_connect()函数例程

    <?php
    // 建立基础 SSL 连接
    $conn_id = ftp_ssl_connect($ftp_server);
    // 使用用户名和密码登录
    $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
    if (!$login_result) {
        // 在这种情况下,PHP 会发生 E_WARNING 级别的告警消息
        die("can't login");
    }
    echo ftp_pwd($conn_id); // /
    // 关闭 ssl 连接
    ftp_close($conn_id);
    ?>
    

    参见

    上篇:ftp_size()

    下篇:ftp_systype()