Laravel5如何从控制器访问公用文件夹

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

我是Laravel的新手,有些小伎俩逃脱了我。

我有一个控制器,我需要在公共文件夹中列出图片(例如:public / images / album / Ecosse),但我不知道如何加入它。我总是没有目录错误。你能解释一下它是如何工作的吗?

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Repositories\AlbumsRepository;
use File;

class AlbumController extends Controller
{
    protected $albumsRepository;

    public function __construct(AlbumsRepository $albumsRepository)

    {
        $this->albumsRepository = $albumsRepository;
    }
    public function show($n)
    {
        $album = $this->albumsRepository->getById($n);

        $files1 = File::allFiles(asset('images/albums/'.$album->titre));
        foreach ($files1 as $key => $value)
           {
              if (!in_array($value,array(".","..")))
              {
                 if (is_dir($dir . DIRECTORY_SEPARATOR . $value))
                 {
                    $result[$value] = dirToArray($dir . DIRECTORY_SEPARATOR . $value);
                 }
                 else
                 {
                    $result[] = $value;
                 }
              }
           } 
        return view('album')->with('album', $album);
    }
}

谢谢您帮忙。马克西姆

image laravel path controller public
2个回答
1
投票

我使用url()函数从控制器访问我的公共文件夹,如:

url('uploads/images/user_image.png');

0
投票

使用RecursiveDirectoryIterator

$directory = new RecursiveDirectoryIterator(public_path('images/albums/'.$album->titre));
$iterator = new RecursiveIteratorIterator($directory);
foreach ($iterator as $item) {
    // both file and directory will be iterated.
}
© www.soinside.com 2019 - 2024. All rights reserved.