簡體   English   中英

Laravel - 使用allfiles返回空數組

[英]Laravel - Using allfiles gives back empty array

我幾乎在所有項目中都使用了laravel,並且在嘗試列出目錄中的所有文件時遇到了問題。

這是我的代碼如下:

            $directory = ("upload/"."$username->username");

        $scanned_directory = storage::allfiles($directory);

因此,您可以看到First line是Upload中的目錄,后跟帳戶的用戶名。

第二行用於掃描此目錄並僅列出文件。 可悲的是,它總是給我一個空陣列。 使用Scandir()在這里工作...但它給了我不想要的文件夾。

所以...任何提示? 我檢查了API,我真的看不出這里有什么問題:(

使用Storage::allFiles('directory')方法時沒有結果的原因是此方法只查看應用程序的存儲文件夾,通常是storage/app 因此,為什么修改配置中的存儲路徑就像@yassine所提到的那樣(你不應該這樣做)。

如果您希望使用storage文件夾之外的文件,只需使用File外觀。 例如File::allFiles('directory')

我也有同樣的本地存儲問題。 我修復了:

  1. 項目/配置/ filesystems.php
  2. 第44行
  3. 將根文件夾更改為從storage_path('app')更改為base_path()

然后我提供了一個相關的路徑到Storage :: files()或Storage :: allfiles()中的根文件夾。

像Storage :: allfiles(“app”),如果我想獲取相對於配置文件中給出的基本路徑的子文件夾“app”的文件。

祝好運

$direcotry必須是你的laravel根文件夾的絕對路徑。

當您上傳的文件夾位於根文件夾中時,請嘗試此操作

$directory = base_path("upload/"."$username->username");
$scanned_directory = storage::allfiles($directory);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM