У меня возникли некоторые проблемы при перемещении файла из SFTP в папку моего проекта. Итак, я подключаюсь к SFTP следующим образом:
try {
$filesystem = new Filesystem(new SftpAdapter([
'host' => $sftp->sftp_host,
'port' => $sftp->sftp_port,
'username' => $sftp->sftp_user,
'password' => $sftp->sftp_password,
'root' => $sftp->sftp_path,
'timeout' => 10,
]));
} catch (Exception $exception){
throw new Exception("Could not connect to SFTP.");
}
Затем я проверяю, существует ли нужный мне файл
if ($filesystem->has($sftp->csv_filename)) {
}
Если это так, я пытаюсь скопировать файл вновое местоположение
if ($filesystem->has($sftp->csv_filename)) {
$file = $filesystem->copy($sftp->csv_filename, $this->newFilePath($report_type));
dd($file);
} else {
throw new Exception("File not found.");
}
protected function newFilePath($type)
{
$dateFolder = date("Y-m-d");
$filePath = $this->getUserDir() . "/{$type}/{$dateFolder}/";
$finalPath = storage_path("app/public/" . $filePath);
return $finalPath;
}
protected function getUserDir()
{
return 'user_' . Auth::user()->id;
}
Когда я запускаю это, кажется, что dd возвращает true. Однако в месте, где я ожидаю, нет файла.
Я что-то здесь упускаю?
Спасибо