php创建目录

时间:2012-04-28 18:50:48

标签: php

我正在创建一个目录,我收到了错误

警告:chmod()[function.chmod]:第104行/home/www/public_html/console/pubs-add.php中没有此类文件或目录

运行代码的php文件位于www / console中,我尝试创建的目录位于www / images / gallery中。

我尝试了许多设置路径的变体,例如../ images/gallery或home / www但没有看到工作

define("PATH", "/www/images/gallery");

$dir = 'a1234';

$targetfilename = PATH . '/' . $dir;

if (!is_file($dir) && !is_dir($dir)) {
    mkdir($dir); //create the directory
    chmod($targetfilename, 0777); //make it writable
}

4 个答案:

答案 0 :(得分:3)

mkdir命令只使用$dir,它只是'a1234'(在当前工作目录中)。这将失败(并使chmod失败)。

解决方案:您可能希望在$ dir前加上PATH ...

答案 1 :(得分:2)

它会在当前工作目录中生成$dir,但这并不意味着它等于您的$targetfilename。我会说你必须mkdir($targetfilename)而不是mkdir($dir)

答案 2 :(得分:2)

亲爱的chmod()创造了一些时间问题。所以我建议你使用它 mkdir(“/ path / to / my / dir”,0700); 如果你想要创建的目录应该准备好并且可以使用,那么使用它 mkdir(“/ path / to / my / dir”,0777);

答案 3 :(得分:2)

问题是你不能chmod你没有制作的文件。出于这个原因,我改变了行

$task = chmod($targetfilename, 0777); //make it writable

$task = chmod($dir, 0755); //make folder writable

提示:如果您希望文件夹可写,请将其修改为755而不是777. 777用于文件。