使用mkdir在帐户注册时创建新目录

时间:2013-05-27 07:55:59

标签: php mkdir

我的脚本在帐户注册时自动创建新目录时遇到困难。

我的代码:

$bloguser=$_POST['bloguser'];
$root = "/accounts/";
if(!is_dir($root.$bloguser, 0777))
    mkdir($root.$bloguser, 0777);
if(!is_dir($root.$bloguser."/images", 0777))
    mkdir($root.$bloguser."/images", 0777);
if(!is_dir($root.$bloguser."/images/avatar", 0777))
    mkdir($root.$bloguser."/images/avatar", 0777);

问题:

帐户注册就好了。但是,is_dir和mkdir给了我错误:

警告:...中的is_dir()参数计数错误

警告:mkdir()[function.mkdir]:无法访问/ accounts / TestAccount ...

警告:...中的is_dir()参数计数错误

警告:mkdir()[function.mkdir]:无法访问/ accounts / TestAccount / images in ...

嗯,你明白了。

我尝试过的事情/要知道的事情:

  • 我在根目录中给了accounts文件夹0777的写作权限,只是为了确保写作权不是问题;
  • 我试过用双引号来试试,比如说它们 围绕变量;
  • 我还试图将0777的东西从检查中删除目录是否存在:if(!is_dir ----

提前感谢您的帮助。 :)

2 个答案:

答案 0 :(得分:1)

有一种更简单的方法。 mkdirrecursive选项:

mkdir($root.$bloguser."/images/avatar", 0777, true);

编写PHP时,首先要做的就是阅读文档。那里有很多,社区评论经常解决常见问题。

答案 1 :(得分:0)

请查看is_dir手册http://de1.php.net/manual/de/function.is-dir.php

bool is_dir ( string $filename )

您可以使用

检查您是否具有写入权限
bool is_writable ( string $filename )

http://de1.php.net/manual/de/function.is-writable.php