【问题标题】:How to create a folder in laravel如何在 laravel 中创建文件夹
【发布时间】:2020-08-10 01:02:52
【问题描述】:

laravel 版本 6.18.8

我用这一行创建了一个目录,但它说 Method Illuminate\Filesystem\Filesystem::mkdir 不存在。

$newDirectory = public_path() . 'img/reviews/' . Str::slug($request->title,'-');
File::mkdir($newDirectory);

我还使用了 ma​​keDirectory(),但也无法正常工作..

请帮忙用 laravel 创建一个目录

【问题讨论】:

  • 你试过composer dump-autoload吗?您也可以使用Storage::makeDirectory($directory); 创建目录
  • composer dump-autoload Storage::makeDirectory($directory); 这两个命令必须使用或转储文件包的负载?
  • 这个不行
  • composer dump-autoload 是重新生成您的自动加载器文件。一个快速的解决方法是删除您的供应商文件夹并再次运行composer install 并生成所有供应商。
  • 这能回答你的问题吗? create folder in laravel

标签: php laravel directory


【解决方案1】:

你可以使用phpmkdir函数

$dirPath = public_path('img/reviews/' . Str::slug($request->title,'-')); 
if (!file_exists($dirPath)) {
    mkdir($dirPath, 0777, true);
}

How to create directory if not exists in Laravel 7.x and 6.x?

【讨论】:

  • 这会起作用,但不能解决 OP 的问题
  • 嗯,在幕后 Laravel 也使用了 php 原生函数。对吗?
  • 是的,它确实在幕后使用了它,但是 Laravel 通过Filesystem 提供了太多的功能,如果它被破坏了,那么整个应用程序可能会破坏。
  • 我猜 OP 输入错误或导入了File Facade
  • 你能帮我解决另一个话题吗?我将此代码用于单次上传。 if (request()->has('image')) { $photo = request()->file('image'); $image = Image::make($request->image); $image->save(public_path('../../img/gallery/gallery-images/' . DB::getPdo()->lastInsertId() . '.png')); DB::table('galleries') ->where('id', '=', DB::getPdo()->lastInsertId()) ->update([ 'image' => DB::getPdo()- >lastInsertId() . '.png', ]); } 但我如何在多次上传中使用它
猜你喜欢
  • 2014-03-19
  • 2022-01-11
  • 1970-01-01
  • 2014-06-10
  • 1970-01-01
  • 1970-01-01
  • 2017-06-23
  • 2019-09-16
  • 2019-12-05
相关资源
最近更新 更多