PHP创建多个目录

时间:2012-10-27 02:04:23

标签: php

让我们说,在PHP中,我试图将图像放在root上的特定目录中。

我想把它放在/images/afc/esp/stadium/目录下。图像文件夹,联合文件夹,国家ISO3文件夹,内容文件夹。

$folder_full = "images/".$getFed."/".$country_folder."/stadiums";
if (!is_dir($folder_full)) mkdir($folder_full);

在您提出之前,是$getFed$country_folder工作和输出文字。所以,我得到了这个错误:Warning: mkdir(): No such file or directory

我不明白吗?

4 个答案:

答案 0 :(得分:6)

您的某些子目录不存在,因此您需要迭代创建它们或将第3个参数设置为mkdir()true。请注意,第二个参数是目录权限(在Windows上被忽略),默认为0777

您还需要使用$folder_full/设置为root。

$folder_full = "/images/{$getFed}/{$country_folder}/stadiums";
if (!is_dir($folder_full)) mkdir($folder_full, 0777, true);

答案 1 :(得分:5)

您需要使用recursive参数添加您提供的路径中不存在的目录:mkdir($folder_full, 0777, true)

请参阅PHP文档here

答案 2 :(得分:3)

所有中间目录必须已经存在。您可以使用可选的第三个参数来触发此行为:

mkdir($folder_full,0777,true);

答案 3 :(得分:0)

在正常的cPanel中,文件夹权限应为0755 所以这种情况下的命令是:

mkdir('tst/tst2/tst3', 0755, true);