如何使用php在父目录中创建子目录?

时间:2014-11-29 07:23:23

标签: php html mysql

如何在php中创建文件夹。我试过这段代码。它没有在父目录中创建文件夹。

$dir1="http://www.consul.com/hrd/b";
 mkdir($dir1, 0755);

5 个答案:

答案 0 :(得分:1)

使用dirname(__FILE__)获取根目录。 获取根目录

对于PHP> = 5.3.0尝试

__DIR__

对于PHP< 5.3.0尝试

dirname(__FILE__)

$root = dirname(__FILE__);
$dir1 = $root . "/your_folder";
mkdir($dir1, 0755);

编辑:如果需要,还可以通过检查其一致性来创建目录。

$root = dirname(__FILE__);
$dir1 = $root . "/your_folder";
if(!is_dir($dir1)){
   mkdir($dir1, 0755);
}

<强>参考:

答案 1 :(得分:1)

mkdir()使用本地目录路径,而不是服务器目录路径。有关详细信息,请参阅this link

您需要运行以下代码:

$dir = __DIR__ . "hrd/b"; // This gets the server's root directory and creates "hrd/b" relative to it.
mkdir($dir, 0755);

请注意,对于PHP版本&lt; 5.3.0,您需要使用dirname(__FILE__)代替__DIR__

答案 2 :(得分:0)

试试这个

$dir1="/home/UserName/public_html/DirName";
 mkdir($dir1, 0755);

答案 3 :(得分:0)

您已将$ dir1设置为URL而不是提供路径。此外,如果任何目录不存在,您可能需要使用递归参数,如下所示:

<?php
$dir1 = "/hrd/b";
if (!mkdir($dir1, 0755, true)) {
    die('Failed to create folders...');
}

有关此功能的详细信息,您可以阅读http://php.net/mkdir

我在使用PHP5.4.3的Windows Box上尝试了这个代码,包含在WampServer 2.2中(使用Apache 2.2.22)并且它运行良好。

当我在运行早期版本的PHP5的Linux服务器上尝试代码时,我不得不调整路径,这是最终在那里工作的代码:

<?php
$dir1 = dirname(__FILE__)."/hrd/b";

if (!mkdir($dir1, 0755, true)) {
    die('Failed to create folders...');
}

注意:dirname()及其参数(一个魔术常量)一起提供当前正在执行的PHP脚本的完整路径,该信息有助于提供$ dir1的完整路径信息。

答案 4 :(得分:0)

您可以使用此代码在父目录中创建目录。

if(!file_exists(&#34; ../ dir_name /&#34;)){mkdir(&#34; ../dir_name /",0777,true); }