2014-11-24 138 views
0

我想在网站上创建文件夹和子文件夹。代码很简单。不知道为什么不起作用。PHP:创建目录

<?php 

$domain = "officeactionuspto.com"; 

mkdir(($_SERVER["DOCUMENT_ROOT"].'/crc/website_templates/client_files/'.$domain), 0777, true); 
mkdir(($_SERVER["DOCUMENT_ROOT"].'/crc/website_templates/client_files/'.$domain.'/images'), 0777, true); 


$folder= $_SERVER["DOCUMENT_ROOT"].'/crc/website_templates/client_files/'.$domain.'/images'; 


if(is_dir($folder)) 
    { 
    echo ("$folder is a directory"); 
    } 
else 
    { 
    echo ("$folder is not a directory"); 
    } 

?> 
+1

我们不确定。 – 2014-11-24 21:55:27

+2

赌你一美元其许可问题 – 2014-11-24 21:56:12

+0

权限?它不喜欢我的0777? – 2014-11-24 21:56:54

回答

-1

您不需要使用完整的绝对文件名。您只需使用相对于正在执行的脚本所在文件夹的路径。

虽然我不知道你的文件结构,让我们假装PHP脚本在crc文件夹:你的命令是:mkdir(('/website_templates/client_files/'.$domain), 0777, true);

编辑:使用递归参数,您可以创建图片子文件夹在相同的命令。

+0

刚刚试过..没有工作 – 2014-11-24 22:02:30

+0

我编辑了我的答案:在字符串的开头添加正斜杠。 – 2014-11-24 22:03:52

+0

仍然没有工作..你也忘了打开一个陪同 – 2014-11-24 22:06:33

1

您不必使用绝对路径来创建目录。

您可以只需用下面的代码做到这一点:

mkdir('images', 0777, true); 


$folder= 'images'; 

if(is_dir($folder)){ 
    echo ("$folder is a directory"); 
}else{ 
    echo ("$folder is not a directory"); 
} 

你也可以在创建后的绝对路径,如果你需要的:

$full_path = realpath('images'); 

PS:我假设你正在执行/index.php上的这段代码,如果在另一个不同的结构上,则需要为它编写相对路径。

编辑:我测试并消除了mkdir上的圆括号和作品。

+0

是的,但是如果我想让我的文件夹位于我的php文件的不同文件夹中呢? – 2014-11-25 14:15:35

+0

我已经尝试了相似的路径,就像下面的例子。它不起作用。 – 2014-11-25 14:20:18

+0

我只是简单地尝试了你的代码。它不起作用 – 2014-11-25 14:27:24