ftp_ssl_connect

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

ftp_ssl_connect打开一个安全的 SSL-FTP 连接

描述

ftp_ssl_connect(string $hostname, int $port = 21, int $timeout = 90): FTP\Connection|false

ftp_ssl_connect() 打开一个显式 SSL-FTP 连接到指定的 hostname。这意味着即使服务器没有为 SSL-FTP 配置,或者其证书无效,ftp_ssl_connect() 也会成功。只有当调用 ftp_login() 时,客户端才会发送相应的 AUTH FTP 命令,因此在上述情况下,ftp_login() 将会失败。

注意: 为什么这个函数可能不存在

在 PHP 7.0.0 之前,ftp_ssl_connect() 仅在 ftp 模块和 OpenSSL 支持都已静态构建到 php 中时才可用;这意味着在 Windows 上,此函数在官方 PHP 构建中是未定义的。要在 Windows 上使用此函数,必须编译自己的 PHP 二进制文件。

注意:

ftp_ssl_connect() 不适合与 sFTP 一起使用。要使用 sFTP 与 PHP,请参见 ssh2_sftp().

参数

hostname

FTP 服务器地址。此参数不应有任何尾部斜杠,也不应以 ftp:// 为前缀。

port

此参数指定要连接的备用端口。如果省略或设置为零,则使用默认的 FTP 端口 21。

timeout

此参数指定所有后续网络操作的超时时间。如果省略,则默认值为 90 秒。超时时间可以使用 ftp_set_option()ftp_get_option() 在任何时候更改和查询。

返回值

如果成功,则返回一个 FTP\Connection 实例,如果失败,则返回 false

变更日志

版本 描述
8.1.0 现在返回一个 FTP\Connection 实例;之前,返回一个 资源

示例

示例 #1 ftp_ssl_connect() 示例

<?php

// 设置基本的 ssl 连接
$ftp = ftp_ssl_connect($ftp_server);

// 使用用户名和密码登录
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);

if (!
$login_result) {
// 在这种情况下,PHP 已经引发了 E_WARNING 级别的消息
die("无法登录");
}

echo
ftp_pwd($ftp);

// 关闭 ssl 连接
ftp_close($ftp);
?>

参见

添加注释

用户贡献注释

此页面没有用户贡献注释。
To Top