php 目录是否存在操作实例
$dirname='phpMyAdmin';
一、遍历目录
/*
* 遍历目录:
* 输入:目录路径
* 输出:目录名或者文件名
*/
function browserDir($dirname){
$dir=opendir($dirname);
$filenames=array();
//注$filename只是获得的文件名,若进行文件操作必须指明“文件的路径”
while ($filename=readdir($dir)) {//读到结尾返回假
if($filename!='.' && $filename != '..'){
$filenames[]=$filename;
}
}
closedir($dir);
return $filenames;
}
二、统计目录大小
/*
* 统计目录大小:
* 核心思想:目录的遍历
* 输入:$dirname——目录路径
* 输出:字节数
*/
function getDirSize($dirname){
$filenames=browserDir($dirname);
foreach ($filenames as $v){
$dirfile=$dirname.'/'.$v;
if($v!='.' && $v!='..'){
if(is_dir($dirfile)){
$dirsize+=getDirSize($dirfile);
}else{
$dirsize+=filesize($dirfile);
}
}
}
return $dirsize;
}
三、删除目录
/*
* 删除目录:
* 输入:$dirname——目录路径
*/
function delDir($dirname){
if(file_exists($dirname)){//判断目录是否存在
$filenames=browserDir($dirname);
if(!empty($filenames)){
foreach ($filenames as $v){
$file=$dirname.'/'.$v;
if(is_dir($file)){
delDir($file);
}else{
unlink($file);//删除文件
}
}
rmdir($dirname);//删除空目录
echo '<script>alert("删除目录成功!")</script>;';
}else{
rmdir($dirname);
echo '<script>alert("删除目录成功!")</script>;';
}
}else{
echo '<script>alert("对不起,你删除的目录不存在或者已经删除!")</script>;';
}
}
四、复制目录
/*
* 复制目录:
* 核心思想:创建目录、复制文件
* 输入:$dirform——源目录;$dirto——新目录;
*
*/
function copyDir($dirform,$dirto){
if(is_file($dirto)){
echo "目标不是目录不能创建";
return;
}
if(!file_exists($dirto)){
mkdir($dirto);
}
$filenames=browserDir($dirform);
foreach ($filenames as $v){
$filefrom=$dirform.'/'.$v;
$fileto=$dirto.'/'.$v;
if(is_dir($filefrom)){
copyDir($filefrom, $fileto);
}else{
copy($filefrom, $fileto);
}
}
}
五、单位换算
/*
* 单位换算:
* $size:以B为单位的大小
*
*/
function setSize($size){
$dw="B";//单位
if($size >= pow(2,40)){
$size=round($size/pow(2,40),2);//小数点保留两位
$dw="TB";
}elseif($size >= pow(2,30)){
$size=round($size/pow(2,30),2);//小数点保留两位
$dw="GB";
}elseif($size >= pow(2,20)){
$size=round($size/pow(2,20),2);//小数点保留两位
$dw="MB";
}elseif($size >= pow(2,10)){
$size=round($size/pow(2,10),2);//小数点保留两位
$dw="KB";
}
return $size.$dw;
}
相关推荐
-
PHP的另类解析2023-10-23 15:40:14
-
PHP 扩展 PEAR 安装包文件被污染,服务下线2023-10-23 15:39:53
-
用php实现aop切面编程2023-10-23 15:38:06
-
十大排序算法-快速排序 PHP 实现2023-10-23 15:33:52
-
宝塔面板或者LNMP下安装php的mongodb扩展2023-10-23 15:33:08