PHP:如何将文件保存在不存在的目录中?

时间:2011-08-02 09:55:51

标签: php

如何将文件保存在不存在的目录中?

换句话说,它必须自动创建目录/子目录(如果它不存在),然后将文件保存到它。

感谢。

5 个答案:

答案 0 :(得分:5)

每个人都提供了答案,但忘了打开递归标志。您必须将mkdir的第三个参数指定为true,才能创建目录树(from mkdir manual):

<?php
// Desired folder structure
$structure = './depth1/depth2/depth3/';

// To create the nested structure, the $recursive parameter 
// to mkdir() must be specified.

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

// ...
?>

答案 1 :(得分:4)

答案 2 :(得分:4)

    if(!is_dir ( "foldername" ))
    {
    mkdir("foldername");
    }

答案 3 :(得分:2)

if(!is_dir($dir)){
mkdir($dir);
}

答案 4 :(得分:2)

您可以跳过is_dir检查并每次尝试mkdir。如果目录已经存在,mkdir就会失败。从理论上讲,你必须检查mkdir是否成功:

mkdir( $dir, 0777, true );

if( !is_writable( $dir ) ) {
    die( "$dir is not writable" );
}