让我们说,在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
我不明白吗?
答案 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);