ssh2_scp_send - загрузка содержимого всей локальной папки в удаленную папку - PullRequest
0 голосов
/ 29 августа 2018

Я хотел бы использовать функцию ssh2_scp_send для копирования всего содержимого локальной папки в папку на удаленном компьютере.

Я попытался сделать так, как показано в примере по ссылке ниже, но из того, что я понял, я копирую только файл в файл. http://php.net/manual/pt_BR/function.ssh2-scp-send.php

<?php
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

ssh2_scp_send($connection, '/local/filename', '/remote/filename', 0644);
?>

Я решил соединить это с функцией, которая перечисляет все файлы и подпапки в родительской папке.

function listFolderFiles($dir){
    $ffs = scandir($dir);

    unset($ffs[array_search('.', $ffs, true)]);
    unset($ffs[array_search('..', $ffs, true)]);

    // prevent empty ordered elements
    if (count($ffs) < 1)
        return;

    echo '<ol>';
    foreach($ffs as $ff){
        echo '<li>'.$ff;
        if(is_dir($dir.'/'.$ff)) listFolderFiles($dir.'/'.$ff);
        echo '</li>';
    }
    echo '</ol>';
}

listFolderFiles('Main Dir');

Источник: https://stackoverflow.com/a/7121809/8442925

Как я мог повторить эту функцию выше и включить часть ssh2_scp_send? Не могли бы вы дать мне север или другой метод?

...