美文网首页
php文件与目录的操作(超详)

php文件与目录的操作(超详)

作者: 似朝朝我心 | 来源:发表于2021-05-31 22:16 被阅读0次

在我们的印象当中,如果需要将数据永久的保存起来,主要有两种法子,一个是直接保存到普通文件当中,另一个法子就是保存到我们的数据库当中。

利用PHP,我们可以在服务器上生成目录,进行一些文件创建、编辑、删除
修改文件属性等操作。

如何判断给定的文件名是普通文件还是目录?

  • is_file()函数 判断给定文件名是否为一个正常的文件,返回一个布尔值true和false。
  • is_dir()函数 判断给定文件名是否是一个目录。

文件的属性

  • file_exists()函数 检查文件或者目录是否存在。

  • filesize()函数 获取普通文件的大小(不能放文件夹),单位是字节。

  • is_readable()函数 判断给定文件名是否用于可读权限。

  • is_writable()函数 判断给定文件名是否是用于可写权限。

  • filectime()函数 获取文件的创建时间,返回的是一个时间戳,使用的话需要使用date()函数进行转换成可读的日常时间。

  • filemtime()函数 获取文件的修改时间。

  • fileatime()函数 获取文件上次的访问时间。

  • stat()函数 获取文件大部分的属性值,即文件的相关信息内容,返回的是一个数组对象。


下标对应的介绍:


目录的基本操作

  • basename()函数 返回路径中的文件名部分。

  • dirname()函数 返回路径中的目录部分。


    如果嵌套写法,它还可逐步去除最靠后的一个目录。
  • pathinfo()函数 返回文件的路径详细拆分信息。

  • opendir()函数 打开目录句柄,返回一个资源类型的数据。

  • readdir()函数 从目录句柄中读取条目,返回目录中下一个文件的文件名位置。

  • rewinddir()函数 倒回目录句柄,回到最初位置。

  • closedir()函数 关闭目录句柄。

  • mkdir()函数 新建目录。

  • rmdir()函数 删除指定的空目录,只能删除空目录,一个文件都不能存在,否则目录删除失败。

  • scandir()函数 列出指定路径中的文件和目录。

文件的基本操作

  • fopen()函数 打开一个文件或者是URL地址,返回的是一个资源类型的句柄,第二个参数mode值必须填写。
  • fread()函数 读取文件,第一个参数是打开文件路径,第二个参数是读取多少个字节的字符。

    一个英文字符占1个字节,有意思的是读取中文,按照下面的规律,我们可以推断一个中文字符是占3个字节,如果读取4个字节则会发生中文乱码现象,再次证明1个中文相当于3字节。
  • fgets()函数 从文件指针中读取一行,也就是每一次读取一行。

  • feof()函数 检查文件指针光标是否到了文件结束的位置,true表面光标为到了最后面的结束位置。

  • fwrite()函数 写入文件内容。
    第一个参数是目标文件,第二个参数是写入指定内容。

  • fseek()函数 指定文件指针的放置位置。
    第一个参数是目标文件,第二个参数是偏移量,即间隔多少个字符后才开始输入,如果偏移量为0则表明接着后面写,不留空格,第三个参数是指针位置放置:有三个选项,SEEK_SET指定指针的位置,SEEK_CUR是从当前位置加上第二个参数的偏移量,SEEK_END直接把光标移到文件最末尾进行输入。


    上面的fseek()函数去操纵指针的位置是比较冗余的了,如果我们想要在一个文件的末尾接着输入内容,其实可以直接使用追加写模式打开一个文件,实现的效果是一样的。
  • rewind()函数 倒回文件指针的位置。

  • flock()函数 轻便的咨询文件锁定。
    分为共享锁LOCK_SH(读取程序)、独占锁LOCK_EX(写入程序,就是张三这个用户在写入文件的时候,李四也同时打开了这个文件,但李四不能输入,因为张三已经在输入中了,李四需要排队等张三写完了才到自己)、解锁LOCK_UN(无论共享或独占都可以解锁)、不希望加锁时发生堵塞(LOCK_NB)


    李四需要排队,等待5秒结束后才能输入自己的内容
    如果李四不想等5秒后才输入,可以使用直接LOCK_NB,让它加锁不堵塞,这样张三在编辑的时候,李四也可以参与进去编辑了。

    张三在编辑的时候,李四想要进行编辑是不堵塞的,李四并不需要排队
  • ftruncate()函数 将文件截断到给定的长度,从文件的后面删起,保留给定的长度,返回1代表截取成功。

  • fclose()函数 关闭一个已经打开的文件指针。

  • file()函数 将整个文件读入到一个数组当中,返回一个数组。

  • copy()函数 拷贝文件。

  • unlink()函数 删除文件。

  • file_get_contents()函数 将整个文件或URL地址读入到一个字符串当中,返回一个字符串。

  • file_put_contents()函数 将一段字符串写入文件,会覆盖原来内容,也就是每次都以新内容写入覆盖原文。


    有意思的是file_get_contents函数和file_put_contents函数结合一起用的话,会发生意想不到的结果,类似爬起代码,比如我们想获取一个网站的源码。
  • rename()函数 重命名一个文件或者目录。

  • readfile()函数 读入一个文件并写入到输出缓冲,一般应用于下载文件的情形。

相关文章

  • php文件与目录的操作(超详)

    在我们的印象当中,如果需要将数据永久的保存起来,主要有两种法子,一个是直接保存到普通文件当中,另一个法子就是保存到...

  • PHP文件/目录操作

    文件读取/写入操作 fopen()函数 用来打开一个文件,打开时需要指定打开模式 写入函数 fwrite...

  • php 安装swoole

    操作系统:CentOS php安装目录:/usr/local/php php.ini配置文件路径:/usr/loc...

  • PHP七天系列之文件与目录

    PHP提供了完善的操作文件与目录机制。 基础函数 disk_total_space 本函数返回的是该目录所在的磁盘...

  • php操作目录和文件

    php操作目录 1、创建新目录 描述:尝试新建一个由 pathname 指定的目录。 语法:bool mkdir ...

  • jquery+ajax模拟form表单文件上传PHP

    前端HTML: PHP操作: ①创建目录、检查文件格式 ②上传 源码: //上传操作测试 public funct...

  • php操作Sphinx

    使用PHP API操作 Sphinx 1、基础操作 步骤1:复制sphinx\api目录中的接口文件sphinxa...

  • php文件与目录操作:文件上传和文件下载

    文件的上传 文件是如何上传的?你甚至可能好奇它的文件上传的过程是怎么样实现的?其实,对于我们来说,文件的上传过程我...

  • face8文件及目录处理

    文件操作函数以及 打开模式 理解目录操作步骤 尝试联系完成目录的复制和删除函数的编写 通过php函数的方式对目录进...

  • 第9天 PHP目录及文件操作

    PHP操作目录 1、目录****和目录 目录:可以说是一个文件夹,带有盘符的一系列的路径文件:目录下用来存储内容的...

网友评论

      本文标题:php文件与目录的操作(超详)

      本文链接:https://www.haomeiwen.com/subject/sfgbjltx.html