📅  最后修改于: 2023-12-03 15:03:43.126000             🧑  作者: Mango
在 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 开发人员来说,掌握这些技能是非常有帮助的。