Загрузить файл на FTP

Загрузить файл на FTP можно двумя способами. Через  cURL и через FTP.

1-ый способ: cURL

$fp = fopen('/path/to/file.txt', 'r'); // файл для загрузки
$url = 'ftp://username:password@mysite.com:21/path/to/new/file.txt';
 
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_UPLOAD, 1);
curl_setopt($ch, CURLOPT_INFILE, $fp);
curl_setopt($ch, CURLOPT_INFILESIZE, filesize('/path/to/file.txt'));
curl_setopt($ch, CURLOPT_FTPASCII, 1);

2-ой способ: FTP

Загрузка файла происходит через функцию ftp_put().

$conn_id = ftp_connect('ftp.site.ru');
$login_result = ftp_login($conn_id, 'ftp_user', 'ftp_pas');

ftp_put($conn_id, '/save/path/file.zip', 'file.zip', FTP_BINARY);