Home > Article > Backend Development > PHP Linux script operation practice: realizing FTP upload and download
PHP Linux Script Operation Practice: Implementing FTP Upload and Download
In modern Web development, file transfer with the server is a common requirement. FTP (File Transfer Protocol) is a protocol widely used for file transfer. This article will introduce how to use PHP to implement FTP upload and download in a Linux environment, and give specific code examples.
1. Basic operations of FTP in PHP
In PHP, we can use the FTP extension to interact with the FTP server. To use this extension, we need to ensure that PHP has the FTP extension installed and enabled in the php.ini file.
To connect to FTP server, we can use the ftp_connect()
function. The following is a simple example:
// 设定FTP服务器的地址 $server = 'ftp.example.com'; // 建立FTP连接 $conn = ftp_connect($server); // 检查连接是否成功 if (!$conn) { die("无法连接到FTP服务器"); } else { echo "成功连接到FTP服务器"; }
After the connection is successful, we need to provide the username and password to log in to the FTP server. Login can be achieved using the ftp_login()
function.
// 登录到FTP服务器 $login = ftp_login($conn, $username, $password); // 检查登录是否成功 if (!$login) { die("无法登录到FTP服务器"); } else { echo "成功登录到FTP服务器"; }
FTP supports two transmission modes: ASCII mode and binary mode. Before uploading and downloading files, we need to set the transfer mode. Passive mode can be set using the ftp_pasv()
function.
// 设置传输模式为二进制模式 ftp_pasv($conn, true);
2. FTP upload files
After connecting and logging in to the FTP server, we can use the ftp_put()
function to upload files. The following is an example of uploading files:
// 定义本地文件和远程文件的路径 $localFile = '/path/to/local/file.txt'; $remoteFile = '/path/to/remote/file.txt'; // 上传文件到FTP服务器 if (ftp_put($conn, $remoteFile, $localFile, FTP_BINARY)) { echo "文件上传成功"; } else { echo "文件上传失败"; }
3. FTP download files
After connecting and logging in to the FTP server, we can use the ftp_get()
function to download document. The following is an example of downloading a file:
// 定义本地文件和远程文件的路径 $localFile = '/path/to/local/file.txt'; $remoteFile = '/path/to/remote/file.txt'; // 从FTP服务器下载文件 if (ftp_get($conn, $localFile, $remoteFile, FTP_BINARY)) { echo "文件下载成功"; } else { echo "文件下载失败"; }
4. Close the FTP connection
After the operation is completed, we need to close the connection with the FTP server. You can use the ftp_close()
function to close the connection.
// 关闭FTP连接 ftp_close($conn);
The above are the basic operations of using PHP to implement FTP upload and download in Linux environment. I hope it will be helpful to you. Of course, this example only briefly introduces the most basic operations, and you can further encapsulate and optimize them according to actual needs. If you need more complex operations, you can refer to PHP official documentation or other related materials.
Reference:
The above is the detailed content of PHP Linux script operation practice: realizing FTP upload and download. For more information, please follow other related articles on the PHP Chinese website!