如何在Laravel应用商店中创建子文件夹
我想在存储中创建一个子文件夹,如 /存储/app/public/user\u文件夹如何在Laravel应用商店中创建子文件夹,laravel,storage,Laravel,Storage,我想在存储中创建一个子文件夹,如 /存储/app/public/user\u文件夹 有人知道如何使用适当的权限进行操作吗?您的问题有点模糊,但我假设您希望以编程方式进行操作,可能是从控制器内部进行操作 因此,让我们利用Laravel的文件系统类来帮助我们做到这一点 在控制器的顶部,让我们像这样引入它:use-illumb\Filesystem\Filesystem 现在我们可以实例化它了$file=新文件系统()。我可以这样做: $file = new Filesystem();
有人知道如何使用适当的权限进行操作吗?您的问题有点模糊,但我假设您希望以编程方式进行操作,可能是从控制器内部进行操作 因此,让我们利用Laravel的
文件系统类来帮助我们做到这一点
在控制器的顶部,让我们像这样引入它:use-illumb\Filesystem\Filesystem代码>
现在我们可以实例化它了<代码>$file=新文件系统()代码>。我可以这样做:
$file = new Filesystem();
$username = 'userNameGoesHere';
$directory = 'directory/goes/here/' . $username;
if ( $file->isDirectory(storage_path($directory)) )
{
return 'Directory already exists';
}
else
{
$file->makeDirectory(storage_path($directory), 755, true, true);
return 'Directory has been created!';
}
现在,让我们来分析一下我们刚才所做的。首先,我们检查目录是否存在。我认为这样做是一种很好的做法。如果没有,那么我们就创建它
让我们分析一下makeDirectory()
的参数是什么。首先是系统文件路径。我们利用Laravel提供的storage\u path()
helper将我们指向存储目录。然后我们传入目录。第二个参数是该目录的chmod权限。默认情况下,它设置为493
。第三,我们将目录创建设置为递归,这意味着它将创建路径中的每个目录。递归的默认值是false
。最后一个参数告诉目录创建强制它。如果您没有检查目录是否存在,并且在未将其设置为true
的情况下尝试创建它,Laravel将抛出一个异常,抱怨目录已经存在。如果设置为true,Laravel将重新创建目录
您可以阅读有关文件系统类的更多信息
我希望这能有所帮助。您的问题有点含糊不清,但我假设您希望以编程方式执行此操作,可能是从控制器内部
因此,让我们利用Laravel的文件系统类来帮助我们做到这一点
在控制器的顶部,让我们像这样引入它:use-illumb\Filesystem\Filesystem代码>
现在我们可以实例化它了<代码>$file=新文件系统()代码>。我可以这样做:
$file = new Filesystem();
$username = 'userNameGoesHere';
$directory = 'directory/goes/here/' . $username;
if ( $file->isDirectory(storage_path($directory)) )
{
return 'Directory already exists';
}
else
{
$file->makeDirectory(storage_path($directory), 755, true, true);
return 'Directory has been created!';
}
现在,让我们来分析一下我们刚才所做的。首先,我们检查目录是否存在。我认为这样做是一种很好的做法。如果没有,那么我们就创建它
让我们分析一下makeDirectory()
的参数是什么。首先是系统文件路径。我们利用Laravel提供的storage\u path()
helper将我们指向存储目录。然后我们传入目录。第二个参数是该目录的chmod权限。默认情况下,它设置为493
。第三,我们将目录创建设置为递归,这意味着它将创建路径中的每个目录。递归的默认值是false
。最后一个参数告诉目录创建强制它。如果您没有检查目录是否存在,并且在未将其设置为true
的情况下尝试创建它,Laravel将抛出一个异常,抱怨目录已经存在。如果设置为true,Laravel将重新创建目录
您可以阅读有关文件系统类的更多信息
我希望这能有所帮助。最简单的方法就是简单地使用mkdir
。假设775是您的适当权限:
mkdir(存储路径('app/public/user\u folder'),0775)
最简单的方法就是简单地使用mkdir
。假设775是您的适当权限:
mkdir(存储路径('app/public/user\u folder'),0775)
谢谢,是的,我需要775权限:)这也有效谢谢,是的,我需要775权限:)这也有效很高兴我能帮上忙。很高兴我能帮上忙。