📜  php 目录名 - PHP (1)

📅  最后修改于: 2023-12-03 15:03:43.126000             🧑  作者: Mango

PHP 目录名 - PHP

简介

在 PHP 中,目录名是指一个用于存储文件和文件夹的文件夹。在开发 PHP 应用程序时,操作目录名是常见的任务之一。PHP 提供了一组函数来执行目录操作。

创建目录

要创建一个新目录,可以使用 mkdir() 函数。这个函数需要两个参数,第一个参数是目录名,第二个参数是可选参数,用于设置权限。

<?php
$dir = "example_dir";

// 创建一个新目录
if(mkdir($dir, 0700)){
    echo "目录创建成功";
} else{
    echo "目录创建失败";
}
?>
删除目录

要删除一个目录,可以使用 rmdir() 函数。请注意,这个函数只能删除空目录。如果您想要删除非空目录,需要先删除其中的文件和子目录。

<?php
$dir = "example_dir";

// 如果目录存在则删除
if (is_dir($dir)){
    if (rmdir($dir)){
        echo "目录已被删除";
    } else{
        echo "目录无法被删除";
    }
} else{
    echo "目录不存在";
}
?>
遍历目录

要遍历一个目录中的所有文件和子目录,可以使用 opendir()readdir() 函数。opendir() 函数用于打开目录,readdir() 函数用于读取目录中的内容。下面的示例演示如何遍历目录并输出其中的所有内容:

<?php
$dir = "example_dir";

// 打开目录
if (is_dir($dir)){
    if ($dh = opendir($dir)){
        // 读取目录中的内容
        while (($file = readdir($dh)) !== false){
            echo "文件名: " . $file . "<br>";
        }
        // 关闭目录
        closedir($dh);
    }
}
?>
获取目录大小

要计算一个目录的大小,可以使用递归函数来遍历目录并获取其中的所有文件的大小。

<?php
$dir = "example_dir";

// 计算目录大小
function dirSize($dir) {
    $size = 0;
    foreach (glob(rtrim($dir, '/').'/*', GLOB_NOSORT) as $each) {
        $size += is_file($each) ? filesize($each) : dirSize($each);
    }
    return $size;
}

// 输出目录大小
echo "目录大小: " . round((dirSize($dir) / 1024), 2) . " KB";
?>
总结

本文介绍了 PHP 中操作目录名的一些常见用法,包括创建目录、删除目录、遍历目录、计算目录大小等。对于 PHP 开发人员来说,掌握这些技能是非常有帮助的。