PHP 文件系统 mkdir() 函数



PHP 文件系统mkdir()函数用于创建目录,成功时返回true,失败时返回false。

语法

以下是 PHP 文件系统mkdir()函数的语法:

bool mkdir ( string $pathname [, int $mode = 0777 [, bool $recursive = FALSE [, resource $context ]]] )

参数

以下是mkdir()函数的必需和可选参数:

序号 参数及说明
1

$pathname(必需)

这是将创建新目录的路径。

2

$mode(可选)

这是新目录的权限。默认为 0777。

3

$recursive(可选)

如果设置为 true,它将创建嵌套目录,默认为 false。

4

$context(可选)

这是一个上下文流资源。

返回值

函数在成功时返回 TRUE,失败时返回 FALSE。

PHP 版本

mkdir()函数最初作为核心 PHP 4 的一部分引入,并且与 PHP 5、PHP 7 和 PHP 8 兼容。

示例

以下是一个基本示例,展示如何使用 PHP 文件系统mkdir()函数在指定目录中创建目录。

<?php
   // Specify the path inside the mkdir function
   mkdir("/PhpProject/testing");

   // Print the message 
   echo "Directory created successfully!!!";
?>

输出

以下是以下代码的结果:

Directory created successfully!!!

示例

以下是一个示例,展示了mkdir()函数的用法,使用以下代码可以创建嵌套文件夹或目录。此外,还使用了可选参数来提供权限和递归特性。

<?php
   $structure = "/PhpProject/test1/test2/test3";

   if(!mkdir($structure, 0777, true)) {
      echo "Failed to create folders...";
   } else {	
      echo "Nested structure created successfully!!!";
   }
?> 

输出

这将产生以下结果:

Nested structure created successfully!!!

示例

以下是一个使用mkdir()函数创建嵌套文件夹的示例。

<?php
   $dir = "/PhpProject/test1/test2/test3";
   $mode = 0755;
   $recursive = true;

   if (mkdir($dir, $mode, $recursive)) {
      echo "Directories created successfully.";
   } else {
      echo "Failed to create directories.";
   }
?> 

输出

这将生成以下输出:

Directories created successfully.

注意

  • 需要注意的是,您可能希望将权限表示为以零开头的八进制数。当前的 umask(可以使用 umask() 更改)会影响权限。
  • 如果要创建的目录已存在,则视为错误并返回 false。在尝试创建目录之前,请使用 is_dir() 或 file_exists() 检查它是否已存在。
  • 如果目录已存在,则会返回 E_WARNING 错误。
  • 如果由于权限不足而无法创建目录,则会生成 E_WARNING 级别错误。

总结

mkdir()方法是一个内置函数,用于创建由目录指定的目录。它在成功时返回 true,失败时返回 false。您可以使用此函数建立嵌套目录并使用其他参数配置权限。

php_function_reference.htm
广告