1.打开文件:

opendir("文件名称");

2.读取文件:
readdir("文件名称");

<?php
$dirname="phpMyAdmin";
/*判断文件是否存在*/
if(file_exists($dirname)){
if(is_dir($dirname)){
$dir=opendir($dirname);
while($filename=readdir($dir)){
$file=$dirname."/".$filename;
if($filename!='.' && $filename!='..'){
if(is_dir($file)){
echo "<strong style='color:red'>".$filename.".......".GetFileSize(filesize($file))."..........".date("Y-m-d H:i:s",filectime($file))."......".filetype($file)."...............".GetFileSize(dirsize($file)).".......</strong><br>";
}else{
echo $filename."......".GetFileSize(filesize($file)).".......".date("Y-m-d H:i:s",filectime($file)).".....".filetype($file)."............................<br>";
}
}
}
}else{
echo "不是目录";
exit();
}
}else{
echo "文件不存在";
exit();
}
closedir($dir);
function GetFileSize($size){
$dw="Byte";
if($size >= pow(2,40)){
$size=round($size/pow(2,40),2);
$dw="TB";
}else if($size >= pow(2,30)){
$size=round($size/pow(2,30),2);
$dw="GB";
}else if($size >= pow(2,20)){
$size=round($size/pow(2,20),2);
$dw="MB";
}else if($size >=pow(2,10)){
$size=round($size/pow(2,10),2);
$dw="KB";
}else{
$dw="Bytes";
}
return $size.$dw;
}
function dirsize($dirname){
$dirsize=0;
$dir=opendir($dirname);
while($filename=readdir($dir)){
$file=$dirname."/".$filename;
if($filename!='.' && $filename!='..'){
if(is_dir($file)){
$dirsize+=dirsize($file);
}else{
$dirsize+=filesize($file);
}
}
}
closedir($dir);
return $dirsize;
}
//打开文件
//获取打开文件
//判断打开的文件
//去掉. ..
//判断是不是dir文件夹
  //如果是则进去取出文件大下,递归进行判断; ?>

3.删除文件

//判断文件是否存在
//文件是不是目录
//打开文件
//读取文件
//过滤文件
//如果是文件夹则打开,如果是文件则删除
$dirname="phpMyAdmin";
rmdirdir($dirname);
function rmdirdir($dirname){
if(file_exists($dirname)){
if(is_dir($dirname)){
$dir=opendir($dirname);
while($filename=readdir($dir)){
$file=$dirname."/".$filename;
if($filename!='.' && $filename!='..'){
if(is_dir($file)){
rmdirdir($file);
}else{
unlink($file);
}
}
}
}else{
echo "不是文件";
exit();
}
}
else{
echo "文件不存在";
exit();
}
rmdir($dirname);
closedir($dir);
}

4.剪切,重命名

rename("目标","原路径")

5.复制文件

    $dirname="phpMyAdmin";
$dirtoname="Hello";
copydir($dirtoname,$dirname);
function copydir($dirtoname,$dirname){
//判断是不是文件
if(is_file($dirtoname)){
echo "目标不是目录不能创建";
return;
}
//创建文件
if(!file_exists($dirtoname)){
mkdir($dirtoname);
echo "创建文件夹".$dirtoname;
}
//打开文件 $dir=opendir($dirname); //读取文件
while($filename=readdir($dir)){ //过滤文件
if($filename!='.' && $filename!='..'){
//打开之后过滤的文件加上原路径 $file1=$dirname."/".$filename;
$file2=$dirtoname."/".$filename;
echo $file2."<br>"; //判断文件是不是文件夹
if(is_dir($file1)){
copydir($file2,$file1); }else{
copy($file1,$file2);
}
} }
closedir($dir);
}

php 目录操作的更多相关文章

  1. 【C#公共帮助类】FTPClientHelper帮助类,实现文件上传,目录操作,下载等动作

    关于本文档的说明 本文档使用Socket通信方式来实现ftp文件的上传下载等命令的执行 欢迎传播分享,必须保持原作者的信息,但禁止将该文档直接用于商业盈利. 本人自从几年前走上编程之路,一直致力于收集 ...

  2. liunx学习(一):linux下目录操作大全

    Linux C函数之文件及目录函数(全):http://blog.sina.com.cn/s/blog_695e489c01013ldd.html linux目录操作发:http://www.cnbl ...

  3. Java基础知识系列——目录操作

    Java对目录操作的许多方法与上一篇文件操作的方法很多是一样的. java.io.File file = new File( "D:\1\2\3\4"); 1.递归创建目录 fil ...

  4. Python目录操作

    Python目录操作 os和os.path模块os.listdir(dirname):列出dirname下的目录和文件os.getcwd():获得当前工作目录os.curdir:返回但前目录('.') ...

  5. PHP 文件与目录操作函数总结

    >>>文件操作 打开 fopen();    打开文件 读取内容 fread();    从文件指针 handle 读取最多 length 个字节 readfile();    读入 ...

  6. Python::OS 模块 -- 文件和目录操作

    os模块的简介参看 Python::OS 模块 -- 简介 os模块的进程管理 Python::OS 模块 -- 进程管理 os模块的进程参数 Python::OS 模块 -- 进程参数 os模块中包 ...

  7. Matlab命令系列之目录操作

    Matlab命令系列之目录操作 filesep 用于返回当前平台的目录分隔符,Windows是反斜杠(),Linux是斜杠(/).有时此命令结合ispc命令使用,可以灵活的设置目录分割符. fullf ...

  8. Matlab命令——目录操作(windows&Linux)

    Matlab命令——目录操作(windows&Linux) 1. filesep用于返回当前平台的目录分隔符,Windows是反斜杠(\),Linux是斜杠(/).有时此命令结合ispc命令使 ...

  9. 【Linux C中文函数手册】之 目录操作函数

    目录操作函数 1)closedir 关闭目录 相关函数: opendir表头文件: #include<sys/types.h> #include<dirent.h>定义函数: ...

  10. OC7_目录操作

    // // main.m // OC7_目录操作 // // Created by zhangxueming on 15/6/19. // Copyright (c) 2015年 zhangxuemi ...

随机推荐

  1. OO第二次单元总结

    OO第二次单元总结 前言 第二单元的三次作业:系列电梯与多线程. 第五次作业 (1)设计策略 电梯的第一次作业是单部傻瓜电梯,采用FAFS调度策略,电梯按队列顺序依次处理请求,单次只处理一个请求.本次 ...

  2. php截取中文字符串 GB2312 utf-8

    UTF-8截取中文字符串 function Cn_Substr($string, $length) { preg_match_all("/[\x01-\x7f]|[\xc2-\xdf][\x ...

  3. ACCESS删除datagridview和数据库中的一条数据,同时更新显示的方法源码

    //删除,行删除 private void 删除_Click(object sender, EventArgs e) { int dgrcount = dataGridView1.SelectedRo ...

  4. 转:HTML5中的element.dataset

    使用HTML5中的 element.dataset 操作自定义 data-* 数据: 不久之前我向大家展示了非常有用的classList API,它是一种HTML5里提供的原生的对页面元素的CSS类进 ...

  5. 关于XCode 的agvtool命令行

    简介:用agvtool如何来自动更新版本号和bulid version   agvtool是一个命令行工具,允许你自动递增到下一个最高的数量或具体的数字这些数字.本文档提供了更新您的构建和版本号码使用 ...

  6. length()

    在MATLAB中: size:获取数组的行数和列数 length:数组长度(即行数或列数中的较大值) numel:元素总数. s=size(A),当只有一个输出参数时,返回一个行向量,该行向量的第一个 ...

  7. 转:Linux实时将所有输出重定向到文件

    转自: Linux的重定向机制十分好用,我们经常需要在服务器上挂起一个服务程序,然后将该程序的所有输出重定向到某个文件,这样即使我们注销了用户,程序依然在linux服务器上运行着. 但是重定向的输出经 ...

  8. 【HDU5421】Victor and String(回文树)

    [HDU5421]Victor and String(回文树) 题面 Vjudge 大意: 你需要支持以下操作: 动态在前端插入一个字符 动态在后端插入一个字符 回答当前本质不同的回文串个数 回答当前 ...

  9. CodeForces - 1093D:Beautiful Graph(二分图判定+方案数)

    题意:给定无向图,让你给点加权(1,2,3),使得每条边是两端点点权和维奇数. 思路:一个连通块是个二分图,判定二分图可以dfs,并查集,2-sat染色. 这里用的并查集(还可以带权并查集优化一下,或 ...

  10. 51Nod 1079:中国剩余定理

    1079 中国剩余定理  基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 一个正整数K,给出K Mod 一些质数的结果,求符合条件的最小的K.例如,K % ...