КАК В PHP РАБОТАТЬ С SFTP

Для работы с протоколом SFTP в PHP существует специальное расширение ssh2, которое включает в себя функции для установления соединения с SFTP-сервером, выполнения операций чтения и записи файлов, а также получения списка файлов на удаленном сервере.

Для начала работы с SFTP в PHP необходимо установить расширение ssh2:

sudo pecl install ssh2

После успешной установки можно использовать функции для работы с SFTP:

$connection = ssh2_connect('example.com', 22);ssh2_auth_password($connection, 'username', 'password');$sftp = ssh2_sftp($connection);$stream = fopen("ssh2.sftp://$sftp/path/to/remote/file", 'r');

В данном примере мы устанавливаем соединение с SFTP-сервером по адресу example.com, авторизуемся с помощью логина и пароля, получаем дескриптор SFTP-сессии и открываем файл для чтения на удаленном сервере.

Ниже приведен пример функции для загрузки локального файла на удаленный SFTP-сервер:

function upload_file_via_sftp($local_file_path, $remote_file_path, $sftp_conn_resource) { $stream = @fopen("ssh2.sftp://$sftp_conn_resource$remote_file_path", 'w'); if (!$stream) { return false; } $data_to_send = @file_get_contents($local_file_path); if (!$data_to_send) { return false; } if (@fwrite($stream, $data_to_send) === false) { return false; } @fclose($stream); return true;}

Функция принимает путь к локальному файлу, путь к удаленному файлу и дескриптор SFTP-сессии. Функция загружает файл на удаленный сервер, в случае успешной загрузки возвращает true, в противном случае - false.

PHP уроки 3. Работа по FTP с помощью FileZilla. PHP для начинающих.

Connect to FTP/SFTP Server using Visual Studio Code and SFTP Extention

How to list the files from an SFTP server using PHP

sftp - #phpstarters

SFTP, SSH. Пошаговое руководство

PHP уроки. 3: Работа по FTP с помощью FileZilla (PHP для начинающих)

Get list of files present on a SFTP server in PHP using phpseclib library using a dummy SFTP server

SFTP upload to and download from a remote server in PHP 7 using phpseclib (Simple Code)

Реклама
Новое
Реклама