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. JVM笔记(三) 垃圾收集器(2)收集算法

    垃圾收集器2:收集算法 主要通过阅读<深入了解Java虚拟机>(周志明 著)和网络资源汇集而成,为本人学习JVM的笔记.同时,本文理论基于JDK 1.7版本,暂不考虑 1.8和1.9 的新 ...

  2. SQL Server 调优系列玩转篇二(如何利用汇聚联合提示(Hint)引导语句运行)

    前言 上一篇我们分析了查询Hint的用法,作为调优系列的最后一个玩转模块的第一篇.有兴趣的可以点击查看:SQL Server调优系列玩转篇(如何利用查询提示(Hint)引导语句运行) 本篇继续玩转模块 ...

  3. Python的generator生成器

    generator保存的是算法,元素仅在使用的时候生成,占用内存小,总元素的个数可以是无限个. 简单的生成器与列表生成式,区别仅在于将中括号[ ],换成小圆括号( ). In [1]: g=(x*x+ ...

  4. Python 编程核心知识体系-文件对象|错误处理(四)

    错误处理 文件对象

  5. Linux:SSH服务配置文件详解

    SSH服务配置文件详解 SSH客户端配置文件 /etc/ssh/ssh——config 配置文件概要 Host * #选项“Host”只对能够匹配后面字串的计算机有效.“*”表示所有的计算机. For ...

  6. Python mode_w

    # 每次使用w模式打开文件, 都会清空这个文件(坑) f = open("胡辣汤",mode="w",encoding="utf-8") f ...

  7. kafka知识点整理总结

    kafka知识点整理总结 只不过是敷衍 2017-11-22 21:39:59 kafka知识点整理总结,以备不时之需. 为什么要使用消息系统: 解耦 并行 异步通信:想向队列中放入多少消息就放多少, ...

  8. [Spring Boot] Spring Boot启动过程源码分析

    关于Spring Boot,已经有很多介绍其如何使用的文章了,本文从源代码(基于Spring-boot 1.5.6)的角度来看看Spring Boot的启动过程到底是怎么样的,为何以往纷繁复杂的配置到 ...

  9. [LeetCode&Python] Problem 463. Island Perimeter

    You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 represen ...

  10. c4 L3-001 找零钱 (简单01背包-输出最小字典序解(用vector保存当前最优解))

    #include <iostream> #include <algorithm> #include <vector> #include <cstdio> ...