• 目录操作

    • is_dir ( $path ) 判断当前路径是否为目录 ,返回布尔

    • opendir ( $path ) 打开路径目录,返回资源

    • readdir ( $handle ) 读取当前打开目录下一个文件,同时指针向前移动一位,返回字符串 (文件/目录名)

    • closedir ( $handle ) 关闭当前打开目录 返回布尔

    • getcwd ( ) 获得当前工作目录

    • rmdir 删除目录,删除前必须先删除目录下所有文件和目录

  代码:列出指定目录下所有文件和文件名

function traversal_dir($path, $deep = 0) {   

if (is_dir($path)) {       

$handle = opendir($path);       

while (($file = readdir($handle)) !== false) {           

if ($file == '.' || $file == '..') {              

 continue;

            }           

            echo str_repeat('-', 2 * $deep) . $file . '</br>';           

            if (is_dir($path . '/' . $file)) {

                traversal_dir($path . '/' . $file, $deep + 1);

            }

        }

    }

}

traversal_dir('./');

  • 文件操作

    • is_file ( $path ) :判断指定 路径是否为文件

    • file_exists ( $path ) : 检查目录或者文件是否存在

    • fopen ( $file ) :打开文件或者 URL 返回资源

    • fread ( resource $handle , int $length ) : 读取文件,可指定长度

    • fwrite ( resource $handle , string $string [, int $length ] ) : 返回写入字符串大小,如果指定了 length,当写入了 length 个字节或者写完了 string 以后,写入就会停止,视乎先碰到哪种情况。

    • fgets ( resource $handle [, int $length ] ) : 读取一行文本,length指定一行文本长度

    • fclose ( resource $handle ) : 关闭文件

    • basename ( $path ) : 返回指定路径的文件名部分 返回String

    • dirname ( $path ) : 返回指定路径的目录名部分 返回string

    • 路径部分

    • 操作部分

    • stat 获得文件信息

    • 判断部分

    • filesize ( $path ) 获得文件大小 int

    • filetype ( $path ) 获得文件类型 string (可能值:fifo,char,dir,block,link,file 和 unknown)

    • rename ( string $oldname , string $newname [, resource $context ] ) 重命名或者移动 返回布尔

    • unlink ( $path ) 删除文件 返回布尔

    • file_get_contents 将整个文件读如一个字符串

    • file_put_contents 将一个字符串写入文件

  代码:每执行一次文件,向文件头部追加 Hello word

$path = './hello.txt';

if (!file_exists($path)) {   

$handle = fopen($path, 'w+');   

fwrite($handle, 'Hello word' . '\r\n');   

fclose($handle);

} else {   

$handle = fopen($path, 'r');   

$content = fread($handle, filesize($path));   

$content = 'Hello word \r\n' . $content;   

fclose($handle);   

$handle = fopen($path, 'w');   

fwrite($handle, $content);   

fclose($handle);

}

代码:遍历删除文件夹及文件夹下所有文件

function traversal_delete_dir($path) {   

if (is_dir($path)) {       

$handle = opendir($path);       

while (($file = readdir($handle)) !== false) {           

if ($file == '.' || $file == '..') {               

continue;

            }           

            if (is_dir($path . '/' . $file))

            {

                traversal_delete_dir($path . '/' . $file);

            } else {               

            if (unlink($path . '/' . $file))

             {                   

            echo '删除文件' . $file . '成功';

                }

            }

        }       

        closedir($handle);       

        rmdir($path);

    }

}

traversal_delete_dir('./shop_api');

PHP文件目录操作的更多相关文章

  1. paip.文件目录操作uAPI php python java对照

    paip.文件目录操作uAPI php python java对照 chdir -- 改变目录 chroot -- 改变根目录 dir -- directory 类 closedir -- 关闭目录句 ...

  2. php文件夹与文件目录操作函数

    在php中一些常用的文件夹/文件目录操作函数总结. php文件夹操作函数 string basename ( string path [, string suffix] ) 给出一个包含有指向一个文件 ...

  3. 你一定要知道的关于Linux文件目录操作的12个常用命令

    写在前面: 1,<你一定要知道的关于Linux文件目录操作的12个常用命令>是楼主收集的关于Linux文件目录操作最常用的命令,包括文件或目录的新建.拷贝.移动.删除.查看等,是开发人员操 ...

  4. [PY3]——IO——文件目录操作

    IO—os.shutil—文件目录操作 目录操作 1. 新建 os.mkdir(path[, mode]) 相当于mkdir,新建目录 os.makedirs(path[, mode]) 相当于mkd ...

  5. python OS 模块 文件目录操作

    Python OS 模块 文件目录操作 os模块中包含了一系列文件操作的函数,这里介绍的是一些在Linux平台上应用的文件操作函数.由于Linux是C写的,低层的libc库和系统调用的接口都是C AP ...

  6. php 文件夹 与 文件目录操作

    php文件夹操作函数 string basename ( string path [, string suffix] )给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件名.如果文件名是 ...

  7. Vim 中进行文件目录操作

    Vim 中进行文件目录操作 当前文件名 我们知道Vim有48个寄存器,其中%只读寄存器中保存着当前文件路径. 例如在/home/harttle/下打开src/main.cpp,我们打印%的值: :ec ...

  8. python2.7.13标准库文件目录操作与文件操作

    标准库的中文参考文档: http://python.usyiyi.cn/translate/python_278/library/index.html 官方标准库文档:https://docs.pyt ...

  9. ios文件系统文件目录操作

    对于一个运行在iPhone得app,它只能访问自己根目录下得一些文件(所谓sandbox). 一个app发布到iPhone上后,目录结构如下: 1.其中获取 app root 可以用 NSHomeDi ...

  10. PHP学习笔记--文件目录操作(文件上传实例)

    文件操作是每个语言必须有的,不仅仅局限于PHP,这里我们就仅用PHP进行讲解 php的文件高级操作和文件上传实例我放在文章的最后部分.--以后我还会给大家写一个PHP类似于网盘操作的例子 注意:阅读此 ...

随机推荐

  1. 12c DG broker DMON自动重启过程分析

    一.知识点 1.强烈建议大家管理dataguard使用broker. 2.broker的日志要知道在哪里,会看日志是学习的第一步. 3.体系结构需要看官方文档. 二.测试过程 1.查看DMON进程 & ...

  2. 第 43 章 Baidu Map

    43.1. BMap.Circle var point = new BMap.Point(22.111, 114.111); var styleCircleF = { strokeColor:&quo ...

  3. 经过踩坑,搭建成功的Appium自动化测试环境

    因为最近本人准备搞app自动化,所以就搭建环境过程记录下来(主要踩过好几个坑) 期间有点烦躁,后面调整了下心态还是成功弄好了. 一.Appium环境搭建准备软件 所需要到的软件如下: 1.安装JDK1 ...

  4. python进程/线程/协程

    一 背景知识 顾名思义,进程即正在执行的一个过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操作系统的其他所 ...

  5. 也谈解决Combobox绑定数据后取值出现System.Data.DataRowView的问题

    刚才遇到一个怪现象:同一个窗口,同一张表,通过第一个Combobox值的改变,动态绑定第二个Combobox,结果出现一个怪现象,第一个Combobox有的值改变第二个Combobox一切正常,有几个 ...

  6. Shell脚本(二)数学运算

    直接上代码. #!/bin/bash no1= no2= echo "using let ..." let result=no1+no2 echo "result is: ...

  7. java23种设计模式——泡MM版

    一.创建型模式 1.FACTORY:追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,固然口味有所不同,但不管你带MM往麦当劳或肯德基,只管向服务员说;来四个鸡翅就行了.麦当劳和肯德 ...

  8. spring Code(spring 核心)

    一.spring的作用 spring 就是为了让我们以后能够做大的项目准备的.spring核心的功能就是一个工厂模式,spring相当于为你的项目专门成立一个一个工厂,这个工厂负责创建对象 ,维护对象 ...

  9. HTTPS GET | POST | DELETE 请求

    依赖: <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp& ...

  10. 【Hadoop离线基础总结】MapReduce 社交粉丝数据分析 求出哪些人两两之间有共同好友,及他俩的共同好友都有谁?

    MapReduce 社交粉丝数据分析 求出哪些人两两之间有共同好友,及他俩的共同好友都有谁? 用户及好友数据 A:B,C,D,F,E,O B:A,C,E,K C:F,A,D,I D:A,E,F,L E ...