php实现ftp

PHP 实现 FTP 功能
PHP 提供了内置的 FTP 函数库,可以方便地实现 FTP 文件传输功能。以下是常见的 FTP 操作实现方法:
连接到 FTP 服务器
$ftp_server = "ftp.example.com";
$ftp_user = "username";
$ftp_pass = "password";
// 建立连接
$conn_id = ftp_connect($ftp_server) or die("无法连接到 $ftp_server");
// 登录
$login_result = ftp_login($conn_id, $ftp_user, $ftp_pass);
// 检查连接是否成功
if ((!$conn_id) || (!$login_result)) {
die("FTP 连接失败");
}
上传文件到 FTP 服务器
$local_file = "local.txt";
$remote_file = "remote.txt";
// 上传文件
if (ftp_put($conn_id, $remote_file, $local_file, FTP_BINARY)) {
echo "文件上传成功";
} else {
echo "文件上传失败";
}
从 FTP 服务器下载文件
$local_file = "download.txt";
$remote_file = "remote.txt";
// 下载文件
if (ftp_get($conn_id, $local_file, $remote_file, FTP_BINARY)) {
echo "文件下载成功";
} else {
echo "文件下载失败";
}
列出 FTP 目录内容
$directory = "/";
// 获取目录列表
$contents = ftp_nlist($conn_id, $directory);
// 输出目录内容
print_r($contents);
创建 FTP 目录
$new_dir = "new_directory";
// 创建目录
if (ftp_mkdir($conn_id, $new_dir)) {
echo "目录创建成功";
} else {
echo "目录创建失败";
}
删除 FTP 文件
$file_to_delete = "file_to_delete.txt";
// 删除文件
if (ftp_delete($conn_id, $file_to_delete)) {
echo "文件删除成功";
} else {
echo "文件删除失败";
}
关闭 FTP 连接
ftp_close($conn_id);
使用被动模式
// 启用被动模式
ftp_pasv($conn_id, true);
注意事项
- 确保 PHP 安装时启用了 FTP 扩展(--enable-ftp)
- 对于大文件传输,考虑使用 FTP_BINARY 模式
- 生产环境中建议添加错误处理机制
- 注意 FTP 服务器的权限设置
以上代码示例涵盖了 FTP 的基本操作,可以根据实际需求进行组合和扩展。







