PHP SFTP Простая загрузка файлов

Я использую phpseclib – класс SFTP и пытаюсь загрузить файл, например:

$sftp = new Net_SFTP('mydomain.com'); if (!$sftp->login('user', 'password')) { exit('Login Failed'); } $sftp->put('/some-dir/',$fileTempName); 

Однако файл не загружается внутри some-dir но загружается в один каталог раньше (в стартовый каталог, скажем, это root). Это сводит меня с ума, я думаю, что я пробовал все комбинации some-dir/ or /some-dir или /some-dir/ , но файл там не будет загружаться.

Я не думаю, что ваш пост делает то, что вы думаете, что он делает. Согласно документам, вам нужно сделать Net_SFTP::chdir('/some-dir/') чтобы переключиться на каталог, в который вы хотите отправить файл, затем put($remote_file, $data) , где remote_file – это имя файла, а $data – это фактические данные файла.

Пример кода:

 <?php include('Net/SFTP.php'); $sftp = new Net_SFTP('www.domain.tld'); if (!$sftp->login('username', 'password')) { exit('Login Failed'); } echo $sftp->pwd() . "\r\n"; $sftp->put('filename.ext', 'hello, world!'); print_r($sftp->nlist()); ?> в <?php include('Net/SFTP.php'); $sftp = new Net_SFTP('www.domain.tld'); if (!$sftp->login('username', 'password')) { exit('Login Failed'); } echo $sftp->pwd() . "\r\n"; $sftp->put('filename.ext', 'hello, world!'); print_r($sftp->nlist()); ?>