Laravel存储方法allDirectories()不会从FTP服务器递归返回目录

问题描述 投票:0回答:1

我需要从FTP服务器获取所有目录的列表。

成功安装FTP驱动程序后,Storage::allDirectories()方法正在从根目录返回所有目录。我也曾尝试使用:

Storage::directories('/', true)

也应该返回递归值,但情况相同。

有人知道应该出什么问题吗?

这是我的FTP连接设置:

$ftp = Storage::createFtpDriver([
   'host' => $streamServer->url,
   'username' => $streamServer->username,
   'password' => $streamServer->password,
   'port' => '21',
   'timeout' => '30',
]);
laravel ftp
1个回答
0
投票

欢迎使用Stackoverflow

我已经检查了我的代码,当我在filesystems.php中添加以下行时,它已经可以正常工作了>

我如下在filesystems中创建了ftp驱动程序。

'ftp' => [
        'driver' => env('DOCUMENT_UPLOAD_DRIVER','sftp'),
        'host' => env('DOCUMENT_UPLOAD_HOST','127.0.0.1'),
        'username' => env('DOCUMENT_UPLOAD_USERNAME','root'),
        'password' => env('DOCUMENT_UPLOAD_PASSWORD','root'),
        'root'=> env('DOCUMENT_UPLOAD_ROOT', '/var/www/html')
        'port'     => env('DOCUMENT_UPLOAD_PORT', 22),
        'timeout'  => env('DOCUMENT_UPLOAD_TIMEOUT', 30),
    ], 

此行是额外添加的。

'root'=> env('DOCUMENT_UPLOAD_ROOT', '/var/www/html')

并且当我使用以下命令时,它对我有用。

Storage::disk('ftp')->allDirectories('directoryName');

提供要从中获取列表或保留为空白的目录名称将为您提供html目录中所有递归目录的列表,因为我们已将其作为根目录提供。

© www.soinside.com 2019 - 2024. All rights reserved.