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
, а загружается за один каталог до (в начальный каталог, допустим, он корневой). Это сводит меня с ума, я думаю, что перепробовал все комбинации some-dir/
или /some-dir
или /some-dir/
, но файл не будет загружаться туда.
3
Author: Martin Prikryl, 2012-11-21
1 answers
Я не думаю, что ваш put делает то, что, по вашему мнению, он делает. Согласно документам, вам нужно сделать 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());
?>
3
Author: Gary, 2015-05-23 08:36:12