我需要从FTP服务器获取所有目录的列表。
成功安装FTP驱动程序后,Storage::allDirectories()
方法正在从根目录返回所有目录。我也曾尝试使用:
Storage::directories('/', true)
也应该返回递归值,但情况相同。
有人知道应该出什么问题吗?
这是我的FTP连接设置:
$ftp = Storage::createFtpDriver([
'host' => $streamServer->url,
'username' => $streamServer->username,
'password' => $streamServer->password,
'port' => '21',
'timeout' => '30',
]);
欢迎使用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
目录中所有递归目录的列表,因为我们已将其作为根目录提供。