• 目录操作

    • 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. matlab画图(一)

    例1.画出函数图像 >> x=-pi/2:0.01:pi/2; >> y=x+sin(x)+exp(x); >> plot(x,y,'r','Linewidth', ...

  2. vue+elementUI实现权限的部门管理

    回头看写过的项目,发现以前感觉有难度的地方,现在想想很简单,在此记录一下,不对的地方欢迎吐槽!!! 复制代码 1.实现效果 2.需求分析 主要用于平台各个部门不同权限的操作,将指定的账号放到对应的权限 ...

  3. MySQL Change Data Directory

    为什么80%的码农都做不了架构师?>>>   Stop MySQL using the following command: sudo /etc/init.d/mysql stop ...

  4. rabbitmq添加自启动 centos7环境

    1.编辑一个启动脚本 [root@xxx ~]# vim /usr/local/rabbitmq/sbin/start_rabbitmq.sh 内容如下(根据自己的实际位置做替换即可) #!/bin/ ...

  5. 数据结构之递归Demo(走迷宫)(八皇后)(汉诺塔)

    递归 顾名思义,递归就是递归就是递归就是递归就是递归......就是递归 Google递归:

  6. C. Cave Painting(最小公倍数的应用)

    \(\color{Red}{网上的题解都是投机取巧啊,虽然也没错}\) \(Ⅰ.先说一下投机取巧的方法\) \(自己写几个例子会发现k很小的时候满足条件的n就变得很大\) \(所以我们直接暴力从1判断 ...

  7. spring内嵌jetty容器,实现main方法启动web项目

    Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境.Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布.开发人员可以将 ...

  8. MATLAB矩阵处理—特殊矩阵

    需要掌握 MATLAB语言中特殊矩阵 MATLAB语言中矩阵的变幻 MATLAB语言矩阵如何求值 MATLAB语言中特征值与特征向量 MATLAB语言中稀疏矩阵 2.1  特殊矩阵 如何建立矩阵? 逐 ...

  9. DHCP报文(1)

    DHCP报文 1.地址申请类型(4步工作原理,常考) (1)此题是典型的四步工作原理,在其配置过程中由于没有分配IP地址,用的是广播形式,所以其4中报文类型的目的IP地址均为255.255.255.2 ...

  10. k-modes聚类算法

    为什么要用k-modes算法 k-means算法是一种简单且实用的聚类算法,但是传统的k-means算法只适用于连续属性的数据集(数值型数据),而对于离散属性的数据集,计算簇的均值以及点之间的欧式距离 ...