Как в laravel скачать файл по ftp к себе на сервер и получить к нему путь?

В Laravel есть несколько способов скачать файл по FTP и получить к нему путь. Один из самых простых способов - использование библиотеки "phpseclib".

Шаг 1: Установка библиотеки "phpseclib"
Для начала, установите библиотеку "phpseclib" с помощью Composer. Запустите следующую команду в командной строке вашего проекта Laravel:

composer require phpseclib/phpseclib

Шаг 2: Создание функции для скачивания файла
Создайте функцию, которая будет осуществлять скачивание файла с помощью FTP. Например:

use phpseclibNetFTP;

function downloadFileFromFTP($ftpHost, $ftpUsername, $ftpPassword, $ftpFilePath, $saveToPath)
{
    $ftp = new FTP();
    $ftp->connect($ftpHost);
    $ftp->login($ftpUsername, $ftpPassword);
    $ftp->get($ftpFilePath, $saveToPath);
    $ftp->disconnect();
}

Эта функция подключается к FTP серверу, выполняет вход с указанными учетными данными, скачивает файл с указанного пути на сервере и сохраняет его в указанное место на вашем сервере.

Шаг 3: Использование функции для скачивания файла и получения пути
Вызовите функцию downloadFileFromFTP и передайте ей необходимые параметры (FTP хост, имя пользователя, пароль, путь к файлу на FTP сервере и место для сохранения файла на вашем сервере). Например:

$ftpHost = 'ftp.example.com';
$ftpUsername = 'username';
$ftpPassword = 'password';
$ftpFilePath = '/path/to/ftp/file.txt';
$saveToPath = '/path/to/save/file.txt';

downloadFileFromFTP($ftpHost, $ftpUsername, $ftpPassword, $ftpFilePath, $saveToPath);

$pathToFile = public_path('path/to/save/file.txt');

echo 'Файл был успешно скачан и сохранен по пути: ' . $pathToFile;

Функция public_path() возвращает абсолютный путь к папке public вашего проекта Laravel.

В результате, вы сможете скачать файл с FTP сервера и получить путь к сохраненному файлу на вашем сервере.