php目录代码,PHP目录操作

//basename()

返回路径中的文件名部分

$path="D:/lamp/apache2/htdocs/file.php";

echo basename($path)."
";

//显示带有文件扩展名的文件名

echo basename($path,'php')."
";

//显示不带文件扩展名的文件名

//dirname()

去掉文件名,返回目录名

echo dirname($path)."
";

//返回目录名

//pathinfo()

返回一个关于路径属性的数组

print_r(pathinfo($path))."
";

//opendir()

打开指定的目录

//readdir()

读取指定的目录

//closedir()

关闭指定的目录

//rewinddir()

倒回目录句柄

/*

*下面的代码来统计一个目录下的文件

*/

$num=0;

//用来统计子目录和文件的总个数

$dirname="pm3";

//定义一个目录,即需要遍历的目录

$dir_handle=opendir($dirname);

//打开目录

//将遍历的内容和文件名使用表格格式输出

echo "

echo "

目录".$dirname."下的内容

";

echo "

";

echo "

文件名文件大小文件类型修改时间";

while($file=readdir($dir_handle)){

//循环读取目录里的内容,知道最后

$dirFile=$dirname."/".$file;

//使用目录名和文件名链接起来,这样在下面的filetype当中才能使用

if($num++%2==0){

//通过单复数来实现隔行变色

$bgcolor="#ffffff";

}else{

$bgcolor="#cccccc";

}

echo "

";

echo "

".$file."";

//输出文件名

echo "

".filesize($dirFile)."";

//输出文件大小

echo "

".filetype($dirFile)."";

//输出文件类型

echo "

".filemtime($dirFile)."";

//输出文件的修改时间

echo "

";

}

echo "

";

closedir($dir_handle);

echo "在目录".$dirname."下共有".$num."个文件
";

//disk_free_space()

disk_total_space() 统计磁盘大小

/*

*自定义一个递归函数,统计传入目录文件的大小

*/

function dirSize($directory){

$dir_size=0;

//定义一个整形的变量,用来累加每个文件的大小从而计算目录的大小

if($dir_handle=opendir($directory)){

//打开目录

while($fileName=readdir($dir_handle)){

//循环读取目录中的文件

if($fileName!="." && $fileName!=".."){

//一定要排除掉两个特殊的目录

$subFile=$directory."/".$fileName;

//将文件名和目录名连接

if(is_dir($subFile)){

//判断子文件是否是目录

$dir_size+=dirSize($subFile);

//如果是目录,继续向下循环

}

if(is_file($subFile)){

//判断是否是普通文件

$dir_size+=filesize($subFile);

//获取文件的大小,并和前面的文件大小累加

}

}

}

}

closedir($dir_handle);

//关闭目录的句柄

return $dir_size;

}

$dir_size=dirSize("pm3");

echo "目录pm3的大小是:".round($dir_size/pow(1024,2),2)."MB";

//输出目录的大小

/*

*自定义一个删除目录的递归函数

*/

//unlink()

将目录中的文件删除掉

function delDir($directory){

if(file_exists($directory)){

//判断目录是否存在

if($dir_handle=opendir($directory)){

//打开目录

while($fileName=readdir($dir_handle)){

//循环读取目录下的文件

if($fileName!="." && $fileName!=".."){

//一定要排除两个特殊文件,否则你会后悔的

$subFile=$directory."/".$fileName;

//把文件名和目录名连接起来

if(is_dir($subFile)){

//如果是目录,继续执行本身

delDir($subFile);

}

if(is_file($subFile)){

//如果是普通文件,直接删除

unlink($subFile);

}

}

}

closedir($dir_handle);

//关闭句柄

rmdir($directory);

//运行到这的已经是空目录了,直接删除

}

}

}

//delDir("pm4");

/*

*自定义一个复制或移动目录的递归函数

*/

//copy()

复制一个普通的文件

//mkdir()

创建一个目录

function copyDir($directory,$dirTo){

//两个参数,一个是源目录,一个是目标目录

if(is_file($dirTo)){

//判断如果目标是一个普通文件,则直接退出方法

echo "目标不是一个目录,无法完成复制";

return;

}

if(!file_exists($dirTo)){

//判断如果目录不存在,则创建该目录

mkdir($dirTo);

}

if($dir_handle=opendir($directory)){

while($fileName=readdir($dir_handle)){

if($fileName!="." && $fileName!=".."){

$subFile=$directory."/".$fileName;

$subToFile=$dirTo."/".$fileName;

if(is_dir($subFile)){

copyDir($subFile,$subToFile);

}

if(is_file($subFile)){

copy($subFile,$subToFile);

}

}

}

closedir($dir_handle);

}

}

copyDir("pm3","pm4");

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值