PHP Manual
后退 |  | 前进

# XXXIX. FTP 函数库

# 简介

FTP 函数库可以帮助您实现客户机与服务器之间标准文件传送协议（FTP）的规范进行文件传送。FTP 的详细定义参见 http://www.faqs.org/rfcs/rfc959.html。此扩展库用来使运行的脚本对 FTP 服务器进行广泛的控制。如果你只想在一个 FTP 服务器上读写文件，考虑使用文件系统函数库中的 ftp:// wrapper，它提供了简单和更直观的接口。

# 需求

无需外部库文件就可以加入本扩展模块的支持。

# 安装

In order to use FTP functions with your PHP configuration, you should add the --enable-ftp option when installing PHP 4 or greater or --with-ftp when using PHP 3.

PHP 的 Windows 版本已经内置该扩展模块的支持。无需加载任何附加扩展库即可使用这些函数。

# 运行时配置

本扩展模块在 `php.ini` 中未定义任何设置指令。

# 资源类型

在 FTP 模块中使用了一个资源类型，该资源类型为 FTP 的连接句柄，由函数 ftp_connect() 产生。

# 预定义常量

以下常量由本扩展模块定义，因此只有在本扩展模块被编译到 PHP 中，或者在运行时被动态加载后才有效。

`FTP_ASCII` (integer)

`FTP_TEXT` (integer)

`FTP_BINARY` (integer)

`FTP_IMAGE` (integer)

`FTP_TIMEOUT_SEC` (integer)

  参考函数 ftp_set_option()。

下列变量在 PHP 4.3.0 以后版本中被加入。

`FTP_AUTOSEEK` (integer)

  参考函数 ftp_set_option()。

`FTP_AUTORESUME` (integer)

  为 GET 和 PUT 请求自动决定恢复和开始的位置 (只能工作在 FTP_AUTOSEEK 打开的情况下)

`FTP_FAILED` (integer)

  异步传输失败

`FTP_FINISHED` (integer)

  异步传输成功

`FTP_MOREDATA` (integer)

  异步传输是活动状态的

# 例

例子 1. FTP 实例
`<?php // set up basic connection $conn_id = ftp_connect($ftp_server); // login with username and password $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); // check connection if ((!$conn_id) || (!$login_result)) { echo "FTP connection has failed!"; echo "Attempted to connect to $ftp_server for user $ftp_user_name"; exit; } else { echo "Connected to $ftp_server, for user $ftp_user_name"; } // upload the file $upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY); // check upload status if (!$upload) { echo "FTP upload has failed!"; } else { echo "Uploaded $source_file to $ftp_server as $destination_file"; } // close the FTP stream ftp_close($conn_id); ?>`

后退 | 起点 | 前进
fribidi_log2vis | 上一级 | ftp_alloc