php mkdir通过符号链接警告

时间:2015-06-27 08:45:03

标签: php symlink mkdir

我想通过使用符号链接(软链接)递归地创建目录,但是我发出警告:

  

警告:mkdir():文件存在于...第21行的PHP代码路径

我想要创建的目录是/vagrant/resources/page

/var/www路径中,我创建了一个名为resources的符号链接,链接到/vagrant/resources目录,php代码如下所示:

$directory = '/var/www/resources/page';
if(!file_exists($directory)){
      mkdir($directory,0777,true);
}

/ vagrant中所有目录的权限设置为777。 感谢。

2 个答案:

答案 0 :(得分:0)

正如@arkascha所提到的,你的问题不在于符号链接,而是存在你想要制作的目录。考虑到你的mkdir命令周围条件合理,这有点奇怪。

尝试使用is_dir()代替file_exists()

答案 1 :(得分:0)

我用readlink解决了类似的问题。还要检查它是否是链接之前。之后,该路径即可按预期使用。

$path = '/var/www/resources'
if (is_link($path)) {
    $path = readlink($path);
}